小编看了下后台文章发现都 299 篇文章了,干脆咬牙再更新一篇文章让网站文章数量在今晚就突破 300 大关吧,正好最近 WordPress 会员系统这个话题在 WordPress 圈子也挺火热的先翻翻 WordPress 看看有什么可写的~翻过文档后发现默认的 WordPress 会员系统才五中角色:管理员、编辑、作者、投稿者和订阅者,而且权限也限制的很死。接下来小编就教大家如何给默认的 WordPress 会员系统添加更多角色,并且分配权限。

假设小编要给 weixiaoduo.com 添加一个评论审核员 (评论审核员需要能管理评论的权限,但不需要编辑文章的权限。) 那么首先打开 functions.php 文件在其中加入以下代码:

add_role('site_developer', '评论审核员', array(
    'read' => true, //文章阅读权限
    'moderate_comments' => true, //编辑、删除、修改评论权限
    'edit_posts' => false //编辑文章权限
));

这样一来 WordPress 后台的用户分组里就多了一个评论审核员用户组了,接下来下小编在说下一些常见的 WordPress 权限字段。

read 阅读文章
moderate_comments 管理评论
delete_posts 删除文章
edit_posts 编辑文章
delete_published_posts 删除已发布文章
publish_posts 发布文章
upload_files 上传文件
edit_published_posts 编辑已发布文章
read_private_pages 阅读私有页面
edit_private_pages 编辑私有页面
delete_private_pages 删除私有页面
read_private_posts 阅读私有文章
edit_private_posts 编辑私有文章
delete_private_posts 删除私有文章
delete_users 删除用户
edit_users 编辑用户
edit_themes 编辑主题
edit_plugins 编辑插件

更多 WordPress 权限说明参见:http://codex.WordPress.org/Roles_and_Capabilities

PS:补充下 add_role 这个函数在生效后会自动消失,而新用户角色的设置是添加到数据库中 (表 wp_options 的 wp_user_roles 字段中),所以想删除用户角色的话可以使用 remove_role 函数删除,以本文添加的用户组为例:

remove_role('site_developer');

将以上代码加入到 functions.php 文件即可删除之前添加的评论审核员角色了。下面说明下系统默认的几个用户组:

订阅者:subscriber 投稿者:contributor 作者:author 编辑:editor 管理员:administrator(管理员角色请勿删除!!)