WordPress 自定义添加、删除、修改用户角色及权限

张子凡 WordPress优化 2016-09-27 16:11:28 阅读(...) 评论(15)

WordPress 系统本身自带了多个用户角色等级,方便管理 WordPress 用户的权限,但是有些时候我们可能就需要修改用户角色名称,甚至是删除或者自己添加对应的用户角色,比如子凡最近在做的一个网站就需要使用到这些,删除一些不常用的,添加一个几乎没有任何权限的用户角色,只是为了展现在前端而已。

WordPress 用户交互

WordPress 用户角色对应的英文名称及默认权限普及介绍

1、订阅者(subscriber):只允许修改自己的个人资料,例如昵称、联系方式、密码等等。

2、投稿者(contributor ):具有订阅者的所有权限。可以发表或删除自己的文章,但所发文章需经管理员审核后才能在博客上显示。可以编辑处于待审中的文章,但对已通过审核的文章不能编辑。也可以查看所有站内评论,但不能对评论进行编辑。

3、作者(author):具有投稿者的所有权限。所发表的文章无需管理员审核即可显示,还可以编辑已通过审核的文章,并且拥有媒体库的使用权限。

4、编辑(editor ):具有作者的所有权限。可以对文章、标签、分类、页面、友情链接、评论进行管理,也可以编辑待审中的文章,但编辑后仍然处于待审状态。实际上,编辑拥有除外观、插件、用户、设置和备份之外所有后台选项的操作权限。

5、管理员(administrator ):是 wordpress 最重要的角色,也是最高管理者,拥有博客后台的所有操作权限,通常该角色是唯一的。

一、WordPress 修改用户角色

1、以修改“订阅者”为“设计师”为例,复制下面的代码到 wordpress 主题的 functions.php 文件中。

1
2
3
4
5
6
7
8
//WordPress 修改用户角色
add_action('init', 'fanly_change_role_name');
function fanly_change_role_name() {
	global $wp_roles;
	if ( ! isset( $wp_roles ) )$wp_roles = new WP_Roles();
	$wp_roles->roles['subscriber']['name'] = '设计师';
	$wp_roles->role_names['subscriber'] = '设计师';
}

2、对照修改第 6、7 行中你想要编辑的角色英文名称(小写字母)所对应的中文名称,保存即可。

3、之后,新增用户时,在角色选择中可以看到你所修改的用户角色的新名称。如下图:

wordpress-custom-user-role-01

二、WordPress 添加用户角色

将下面的代码添加到当前主题的 functions.php ,就可以添加一个名为 “自定义角色” 的用户角色,其中 custom_role 为用户因为标识,不可以重复

1
2
3
4
5
6
//WordPress 添加用户角色
add_role('custom_role', '自定义角色', array(
    'read' => true, //阅读权限,true 表示允许
    'edit_posts' => true,//编辑文章的权限,true 为允许
    'delete_posts' => false, //删除文章的权限,false 表示不允许删除
));

效果如下图所示:

wordpress-custom-user-role-02

三、WordPress 删除用户角色

复制如下代码到 wordpress 主题的 functions.php 文件中:

1
2
3
4
5
//WordPress 删除用户角色
remove_role( 'contributor' );//投稿者
remove_role( 'subscriber' );//订阅者
remove_role( 'author' );//作者
remove_role( 'editor' );//编辑

大家根据自己需要进行删除吧!子凡的科普与分享就到这里结束咯!哈哈哈。。。

更多关于WordPress优化及疑问可以添加QQ群:255308000

除非注明,否则均为泪雪博客原创文章,禁止任何形式转载

本文链接:https://zhangzifan.com/wordpress-custom-user-role.html

留言评论

登录 后留言