WordPress

一、需求

  1. 更“本土化”的文本编辑器:可以将 Office Word 的内容格式、表格、文本复制到文本编辑器当中;
  2. 特色模板:布局上采用类似于国内所谓“门户”型网站的模板,设计上符合用户喜好的、有本机构特色,首页出现图片的缩略图;
  3. 嵌入文档:可以在网站上直接显示 Word / PDF 文档,在本地服务器处理而不是上传到第三方网站;
  4. 用户权限:部门用户可以管理各自栏目的内容;
  5. 后台改进:更加“本地化”的呈现方式:
    1. 登录界面,修改,使之具有本机构的特色;
    2. 后台功能,增、删、隐藏;
    3. 后台样式,修改
    4. 后台菜单:自定义

二、扩展功能——用户权限

【部分内容选自:15款WordPress角色权限管理插件13款WordPress用户注册登录插件

这应该是目前最强大的一款WordPress角色管理插件,使用它,你可以:

  • 修改现有角色等级的名称。你可能并不需要”订阅者、编辑者、供稿者”这样的角色名称,而想用”探花,举人,状员”之类的。
  • 你还可以新建多个角色等级,并为每个等级的角色分配不同的权限,你甚至可以为同等级中的某一用户分配不同的权限。
  • 自定义角色等级的权限

总之,这是一款用户管理的首选插件。

这个WordPress插件可以让你拥有更强大的角色权限管理功能,它可以添加新的角色权限,并为每种角色设置可操作哪些东西。

这个WordPress插件可以为读者和编辑实现CMS风格的权限管理, 它凌驾于WordPress的角色之上,可实现指定的内容限制,可选的用户分组等等。

记录每一次WordPress 登录行为的用户名和具体时间。

这个插件可以把WordPress登录页面的Logo和后台的Logo替换成自己的。

【WordPress限定不同用户可查看、发布和编辑的文章分类】Restrict Categories 可以根据不同角色甚至不同用户,限制在后台可查看、发布和编辑指定分类的文章。比如,我希望 投稿者(Contributor)只能查看、发布和编辑“WordPress主题”这个分类的文章,就可以使用这个插件进行限制。对于多用户站点,这是十 分有用的。

三、扩展功能——后台本地化

  1. 移除/自定义仪表盘内容
  2. WordPress 仪表盘显示待审核的文章列表,多部门信息发布,需要行政部门进行文章的审核,需要直接在后台首页显示待审文章。
    /* WordPress 仪表盘显示待审核的文章列表 */
    add_action('wp_dashboard_setup', 'wpjam_modify_dashboard_widgets' );
    function wpjam_modify_dashboard_widgets() {
    	global $wp_meta_boxes;
    
    	if(current_user_can('manage_options')){ //只有管理员才能看到
    		add_meta_box( 'pending_posts_dashboard_widget', '待审文章', 'pending_posts_dashboard_widget_function','dashboard', 'normal', 'core' );
    	}
    }
    
    function pending_posts_dashboard_widget_function() {
    	global $wpdb;
    	$pending_posts = $wpdb->get_results("SELECT * FROM {$wpdb->posts}  WHERE post_status = 'pending' ORDER BY post_modified DESC");
    
    	if($pending_posts){ //判断是否有待审文章
    		echo '<ul>';
    		foreach ($pending_posts as $pending_post){
    			echo '<li><a href="'.admin_url().'post.php?post='.$pending_post->ID.'&action=edit">'.$pending_post->post_title.'</a></li>';
    		}
    		echo '</ul>';
    	}else echo '目前没有待审文章';
    }
    
  3. 自定义 WordPress 后台底部的版权和版本信息
    /* 自定义 WordPress 后台底部的版权和版本信息 */
    add_filter('admin_footer_text', 'left_admin_footer_text');
    function left_admin_footer_text($text) {
    // 左边信息
    $text = '<span id="footer-thankyou">感谢使用<a href="#">WordPress ++ 系统</a>进行创作</span>';
    return $text;
    }
    add_filter('update_footer', 'right_admin_footer_text', 11);
    function right_admin_footer_text($text) {
    // 右边信息
    $text = "0.99999 版本";
    return $text;
    }
    
  4. 自定义后台后台底部的版权和版本信息,【介绍】。
  5. 删除(隐藏)后台不需要的侧边栏菜单。利用 Admin Menu Editor 插件,隐藏、排序、增删、自定义后台左边的管理菜单,设置每个菜单的访问权限,修改菜单名称、链接(可以是任何链接地址),修改该菜单的窗口标题。或者通过 function.php 文件修改。【介绍
  6. Adminimize
  7. WordPress 后台管理菜单变成下拉样式 Ozh’ Admin Drop Down Menu
  8. WordPress 后台文章列表根据文章状态添加不同背景色
  9. WordPress后台主题插件:MP6 和 Bootstrap Admin
  10. 自定义排序WordPress后台管理菜单
  11. WordPress后台公告插件:Announce from the Dashboard

四、扩展功能——文本编辑器

  1. CKEditor for WordPress
  2. Kindeditor for WordPress (据说符合国人习惯),采用插件的方式,安装便捷。
  3. TinyMCE Advanced

五、扩展功能——附件支持

  1. 支持特定格式附件:在 /wp-includes/functions.php 中查找  application/[扩展名],在 // openoffice formats 这行的上面加上 ‘[扩展名]’=>’application/[扩展名],’
  2. 支持所有格式附件(直接禁用文件类型检测):在 wp-config.php 文件中,添加代码。

    define(‘ALLOW_UNFILTERED_UPLOADS’, true);

六、首页的缩略图

七、中文文件名的附件上传问题

参考:

八、其他问题

九、参考模板

WordPress 清理

UPDATE wp_options SET option_value = replace( option_value, 'http://www.domain.org', 'http://www.newdomain.org' ) WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_posts SET post_content = replace( post_content, 'http://www.domain.org', 'http://www.newdomain.org' ) ;
UPDATE wp_posts SET guid = replace( guid, 'http://www.domain.org', 'http://www.newdomain.org' ) ;