如何在WordPress中添加自定义用户角色

文章目录
  1. 自己写代码方法
    1. add_role( string $role, string $display_name, array $capabilities = array() );
  2. 插件方式(推荐)

在使用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)” 您可以在此处添加/删除用户角色或编辑现有角色。

创建用户角色后,您应该能在“设置”>“常规”中看到它。


一言以蔽之,正如您所看到的,通过代码或插件创建自定义用户角色并不难。

通过这些方法,您可以控制每个用户,而不会带来任何复杂性和不确定性。