如何在您的 WordPress 网站上添加自定义用户角色(插件+代码)

已发表: 2023-05-24

随着您的 WordPress 网站的成长和发展,WordPress 提供的默认用户角色可能并不完全符合您的要求。

无论您是在运营会员网站、电子商务平台还是内容丰富的博客,如果您有能力创建自定义用户角色,它都可以成为游戏规则的改变者。 您可以轻松有效地管理用户访问和权限。

WordPress 有六个预定义角色:超级管理员、管理员、编辑、作者、贡献者和订阅者。 每个角色都可以执行一组称为能力的任务。 这意味着每种类型的角色的能力是不同的。

例如,订阅者用户角色只有阅读能力,而贡献者具有不同的能力,例如阅读、删除帖子和编辑帖子。

在本文中,我们将讨论为什么需要自定义用户角色以及如何添加自定义用户角色。 但首先,你应该——

了解 WordPress 站点中的用户角色

在您开始创建任何自定义用户角色之前,您需要了解 WordPress 的默认用户角色。 用户角色是 -

  • 管理员:管理员角色对 WordPress 站点具有最高级别的访问权限和控制权。 管理员可以管理站点的所有方面,包括安装插件、创建和编辑内容、管理用户帐户以及修改站点设置。 他们可以完全控制站点的功能并可以执行任何管理任务。
  • 编辑者:编辑者可以创建、编辑、发布和删除自己的内容,以及其他用户创建的内容。 他们可以管理和审核评论、创建类别并执行各种编辑任务。 但是,编辑者无权访问敏感站点设置或安装插件或主题。
  • 作者:作者可以创建、编辑、发布和删除自己的帖子。 他们可以控制自己的内容,并可以管理对自己帖子的评论。 但是,作者无法修改或删除其他用户创建的内容,并且他们无权访问插件或站点设置。
  • 贡献者:贡献者可以撰写和提交自己的帖子以供审核,但不能发布。 一旦提交,他们的帖子必须在发布之前得到编辑或管理员的批准。 贡献者不能修改或删除其他用户创建的帖子,并且对站点设置的访问权限有限。
  • 订阅者:订阅者在默认用户角色中具有最有限的访问权限。 他们可以登录该站点并更新他们的个人资料信息。 订阅者也可以对帖子发表评论,但他们无法创建或编辑内容。 订户主要用于用户注册和会员资格目的。

查看本文以了解有关 WordPress 用户角色的更多信息

在您的 WordPress 网站上创建自定义用户角色

解释了 wordpress 用户角色的插图

假设,你想要一个只能编辑帖子和阅读的用户,但是在默认的六个用户角色中,你不会找到一个只有阅读和编辑帖子功能但或多或少的用户。 在这种情况下,解决方案是什么?

您可以使用add_ca p(); 为订阅者添加编辑帖子功能; 功能,但这不是一个好的做法。 最好的想法是通过为他们分配能力来创建自定义用户角色。

在 WordPress 中创建自定义用户角色有两种主要方法。 您可以通过添加自定义代码或使用插件来实现。 我们将在本文中讨论这两种方法。 让我们看看它们是如何工作的。

如何使用插件添加、编辑和删除新用户角色

您可能喜欢使用插件而不是添加自定义代码。 要创建新的用户角色,您可以使用 Members 插件,它是一个非常流行的用户和角色管理插件,旨在使 WordPress 成为更强大的 CMS。

您可以从 WordPress 仪表板轻松安装该插件。 只需转到WP-Admin–>Plugins–>Add New。 输入插件名称并激活插件。 现在让我们看看如何使用 Members 插件添加新角色。

激活插件后,您可以看到所有可用的角色,

这是可用用户角色的屏幕截图

1.创建新用户角色

  • 安装并激活此插件后,导航至wp-admin → 成员 → 添加新角色
这是关于如何添加新用户角色的屏幕截图
  • 现在,输入角色名称(例如评论版主)
  • 选择此新用户角色的能力(例如,审核评论、阅读)
  • 单击添加角色按钮。
这是添加新用户角色的截图

2.分配新用户角色

为了分配新的用户角色,请转到WP-Admin–> 用户。 从下拉框中选择一个用户并分配新角色,

这是有关如何分配新角色的屏幕截图

3. 将新用户分配为默认用户角色

现在,转到 WP-Admin → 设置 → 常规,然后单击新用户默认角色下拉字段。 您可以查看并分配与默认用户角色一起列出的新创建的用户角色。

这是添加默认用户的截图

这很容易,对吧? 使用这个方便的插件,我们创建了一个 WordPress 自定义用户角色,只需要几个步骤!

4. 编辑用户角色

使用此插件,您还可以编辑现有的用户角色或新的自定义角色。 只需转到WP-Admin–> 成员。 如果将鼠标悬停在所选用户角色上,您将找到“编辑”选项。

注意:如果要删除任何用户角色,也可以找到删除选项。

这是有关如何编辑用户角色的屏幕截图

现在,选中或取消选中功能,然后单击“更新”按钮。

这是编辑的用户角色的屏幕截图

这是您可以使用插件编辑或删除用户角色的方法。

dokan 多供应商市场解决方案

如何使用自定义代码添加和删除用户角色

WordPress 是世界上排名第一的 CMS,它因其开源特性而广受欢迎。 这意味着您有机会按照自己的方式自定义 WordPress,而且完全免费。 就像 WordPress 让您有机会通过使用名为add_role() 的函数创建自定义用户角色;

CMS 提供了五个用于管理 WordPress 角色和功能的功能:

  • add_role() :用于添加自定义角色。
  • remove_role() :用于删除自定义角色。
  • add_cap() :用于向角色添加自定义功能。
  • remove_cap() :用于从角色中删除自定义功能。
  • get_role() :获取有关角色及其能力的信息。

add_role()函数中有三个参数。

add_role( $role, $display_name, $capabilities );

  1. $role (string) (required) : 角色的唯一名称
  2. $display_name (string) (required) : 要显示的名称
  3. $capabilities (array) (optional):一个人可以访问的能力

让我们创建一个名为Moderator的新用户角色,它具有阅读、创建和发布帖子的能力 在位于主题文件夹中的functions.php末尾包含以下代码行。

您可以通过导航到外观–> 主题文件编辑器来添加代码。

 add_role('moderator', 'Moderator', array( 'read' => true, 'create_posts' => true, 'edit_posts' => true, 'edit_others_posts' => true, 'publish_posts' => true, 'manage_categories' => true, ));

这是它的样子-

这是使用自定义代码添加新角色的屏幕截图

您将在WP-Admin–> Users部分找到新的用户角色,

这是使用代码添加的新角色的屏幕截图

现在保存文件,使用管理员帐户登录到您的站点。 导航到设置 → 常规 您可以在用户列表中看到新创建的用户角色。

这是新用户角色的屏幕截图

就是这样,您可以从 WordPress 管理面板将用户分配给此角色,也可以将此角色设置为新用户默认角色。

使用代码删除用户角色

要删除用户角色,只需使用remove_role() 函数即可。

 remove_role( 'subscriber' ); remove_role( 'editor' ); remove_role( 'contributor' ); remove_role( 'author' );

之后,点击更新按钮,

这是使用代码删除角色的屏幕截图

您会看到角色已被删除,

这是 Only user left 的截图

这是您可以使用自定义代码添加和删除角色的方式。

我们希望本教程对初学者用户有很大帮助。 如果您有任何建议或疑问,请在评论中告诉我们。

关于 WordPress 自定义用户角色的常见问题解答

每个用户角色的所有可能能力列表是什么?

1.超级管理员
创建网站
删除网站
管理网络
管理网站
管理网络用户
管理网络插件
管理网络主题
管理网络选项
上传插件
上传主题
升级网络
设置_网络
2.超级管理员+管理员-
activate_plugins (单个站点或通过网络设置启用)
create_users (单个站点)
delete_plugins (单个站点)
delete_themes (单个站点)
delete_users (单个站点)
edit_files (单个站点)
edit_plugins (单个站点)
编辑主题选项
edit_themes (单个站点)
edit_users (单个站点)
出口
进口
3.超级管理员+管理员
install_plugins (单个站点)
install_themes (单个站点)
列表用户
管理选项
推广用户
删除用户
切换主题
update_core (单个站点)
update_plugins (单个站点)
update_themes (单个站点)
编辑仪表板
定制
删除网站
4.超级管理员+管理员+编辑
中等评论
管理类别
管理链接
edit_others_posts
编辑页面
编辑其他页面
edit_published_pa​​ges
发布页面
删除页面
删除其他页面
删除_published_pa​​ges
删除_others_posts
删除_private_posts
edit_private_posts
阅读私人帖子
删除_private_pages
edit_private_pages
读_private_pages
unfiltered_html (单个站点)
未过滤的_html
5.超级管理员+管理员+编辑+作者
edit_published_posts
上传文件
发布帖子
删除_published_posts
6.超级管理员+管理员+编辑+作者+贡献者
编辑帖子
删除帖子

有没有办法控制编辑者是否只能访问特定类别?

是的,您可以控制和设置编辑器的功能。
WordPress 存储库中有一些插件可以管理编辑器的功能,或者您可以通过选择框功能下方的“屏幕选项”从仪表板修复编辑器角色。

订阅 weDevs 博客

我们发送每周时事通讯,肯定没有垃圾邮件