如何获得现有用户角色(如作者)的所有功能?我将使用它快速复制现有用户角色,然后创建一个新角色,然后为新的自定义角色分配或删除功能。
如何获取现有用户角色的所有功能
1 个回复
最合适的回答,由SO网友:Mac organo 整理而成
我建议不要在默认情况下弄乱现有的角色和功能,当您将来有一堆自定义角色和功能时,这可能会给您带来一些麻烦
为了回答您的问题,我将举一个例子:我需要一个新的角色/用户组,它几乎有一个管理员,但没有编辑插件和主题的能力,来做到这一点:
假设您想复制Administrator, 通过以下方式完成:
$admin_role_set = get_role( \'administrator\' )->capabilities;
$role = \'content_admin\';
$display_name = \'Content Admin\';
add_role( $role, $display_name, $admin_role_set );
通过检查Roles and Capabilities 手册中的列表,我们需要删除edit_plugins
&;edit_themes
我们可以通过使用remove_cap()
:remove_cap( \'content_admin\', \'edit_plugins\' );
remove_cap( \'content_admin\', \'edit_themes\' );