如何在WordPress中添加自定义用户角色
在使用WordPress网站时,管理员可能会遇到要选择用户角色的情况,这意味着管理员可以分配特定的用户控制级别。
有六种不同的预定义用户角色:超级管理员,管理员,编辑,作者,贡献者和订阅者。
每一种用户角色都有一组不同的任务和功能。
例如,超级管理员拥有对WordPress网站和用户的完全控制权,而订阅者仅具有阅读文章的功能。
用户角色的可能性如此之多,具体取决于您要在网站上使用哪种类型的用户。
在这些情况下,创建适当的用户角色将很有帮助。
您可以根据需要通过代码或插件的两种方法添加自定义用户角色。
让我们一一看一下。
自己写代码方法
WordPress具有开源性质,因此我们可以写自己的代码来添加用户角色。
WordPress提供了一个add_role()函数,该函数接受三个参数:
add_role( string $role, string $display_name, array $capabilities = array() );
$role (string) (必需)角色名称,英文。
$display_name (string) (必需)角色的显示名称。
$capabilities (array) (可选)功能列表,例如 array( 'edit_posts' => true, 'delete_posts' => false ); 现在,您必须将以下链接粘贴到主题文件夹中的functions.php文件中。
function wbcom_custom_roles() {
if ( get_option( 'custom_roles_version' ) < 1 ) {
add_role( 'custom_role', 'Custom Subscriber', array( 'read' => true, 'level_0' => true ) );
update_option( 'custom_roles_version', 1 );
}
}
add_action( 'init', 'wbcom_custom_roles' );
一切都准备就绪。
现在,您可以在“后台>设置>常规”中看到自定义创建的用户角色。
在上面的代码中,我们将add_role()函数包装到另一个名为wbcom_custom_roles()的函数中,该函数检查并确保用户角色仅创建一次,并且不会在每次加载网站时更新数据库。
您还可以在add_role()函数的array()参数中添加或修改角色。
例如,‘edit_posts’ => ‘true’ 或 ‘delete_posts’ => ‘false’ 或 ‘administrator’ => ‘true’等。
插件方式(推荐)
如果您不想在主题中添加自定义代码,也可以考虑使用插件。为此,我们使用“User Role Editor”插件,它是一个出色的用户角色和管理插件。
安装并激活此插件,然后进入“用户”>“用户角色编辑器(User Role Editor)” 您可以在此处添加/删除用户角色或编辑现有角色。
创建用户角色后,您应该能在“设置”>“常规”中看到它。
一言以蔽之,正如您所看到的,通过代码或插件创建自定义用户角色并不难。
通过这些方法,您可以控制每个用户,而不会带来任何复杂性和不确定性。