在使用 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)”
您可以在此处添加/删除用户角色或编辑现有角色。
创建用户角色后,您应该能在 “设置”>“常规” 中看到它。
一言以蔽之,正如您所看到的,通过代码或插件创建自定义用户角色并不难。 通过这些方法,您可以控制每个用户,而不会带来任何复杂性和不确定性。