WordPress包括用户角色和权限设置,支持网站管理员指定用户访问网站功能的权限。这使网站最高权限管理员可以更好地控制网站及提高网站安全性。在本教程中,我们将研究每个WordPress用户角色,以帮助决定如何设置用户角色及权限。
什么是WordPress用户角色和权限?
角色是具有特定能力的用户。权限就是能力。WordPress包含6个预设角色和70多种功能。每个角色都会增加其下角色的能力。还有一些方法可以添加新的用户角色和功能。
为什么要管理WordPress用户角色和权限?
指定用户角色很重要的原因有很多。
用户角色有助于提高网站的安全性。参与网站内容编辑的用户不应该拥有更改主题、添加或删除插件、执行更新,甚至审核评论的权限。我们应该控制该用户角色拥有仅需要的功能权限。
利用各种用户角色,您可以对每个用户有权访问的选项进行大量控制。它们允许您建立一个团队并限制他们的访问,因此没有人上传媒体、发布内容或进行未经您授权的更改。
限制用户访问还可以简化您的工作流程。由于用户只能执行某些任务,因此他们不会因不需要的功能而分心或困惑。
某些插件,例如安全或电子商务插件,会检查用户的能力以限制他们可以执行的操作。例如,某些用户角色将看不到设置界面。
内容可以限制为某些用户角色。这包括菜单链接、小工具、文章等。
查看WordPress用户角色和权限
WordPress内置了70多种功能。有两种类型:
- Primitive– 这些功能被分配给预设角色,因此不同的预设用户角色会被自动分配对应的功能权限。
- Meta– 这些功能应用于基于WordPress执行的检查的原始功能。
WordPress内置了5个角色,另外还有1个仅在多站点安装中可见,总共有6个用户角色。角色是:
- 订阅者
- 贡献者
- 作者
- 编辑
- 管理员
- 超级管理员(仅限多站点)
WordPress网站必须具有的唯一用户角色是管理员。安装WordPress时会自动创建此角色(除非它是多站点,否则会创建超级管理员)。
通过安装WooCommerce、LifterLMS等插件,您可以添加更多自定义文章类型,例如学生、教师、供应商、商城运营、客户等。
每个角色都有一组特定的权限(他们有权访问的功能)。下面让我们从最低级别到最高级别查看每个用户角色。
(1)订阅者
订阅者可以创建用户个人资料、访问个人内容、发表评论而无需重新输入他们的信息、更改他们的密码以及接收通知。订阅者不能创建内容。他们仅可以访问仪表盘,但功能是有限的。
这是最受限制的角色,如果用户必须登录才能查看内容或发表评论,这将非常有用。订阅者角色对于用户必须登录才能查看内容的会员网站特别有用。
正如您在上面的示例中看到的,订阅者可以访问仪表盘中的个人资料。仪表盘还将显示订阅者的活动(最近发布的内容和最近的评论)以及WordPress事件和新闻。
(2)贡献者
贡献者包括与订阅者相同的权限,他们可以编辑或删除文章以及读取可重复使用的区块。他们无法上传媒体或发布文章,但可以从现有类别中进行选择并添加标签。
他们可以查看待处理的评论,但不能对其进行审核。贡献者角色可能有点不方便,因为他们无法为其内容上传图像。这个角色非常适合新人和客座作家。
正如您在上面的示例中看到的,贡献者的仪表盘显示了文章、评论、项目、个人资料和工具。
(3)作者
作者包括与贡献者相同的权限,但他们可以上传媒体、发布、编辑或删除自己的文章。他们还可以创建可重复使用的区块并编辑或删除自己的区块。
他们可以控制自己的内容。这使他们更加方便,因为管理员不必为他们上传媒体。但是,这可能有点冒险,因为即使发布了他们的文章,他们也可以删除。除此之外,这是一个安全的角色。
上面的示例显示了作者的仪表板,其中包括文章、媒体、评论、项目、个人资料和工具。
(4)编辑
编辑者具有与作者相同的权限,但他们可以编辑和发布其他用户的文章。他们可以完全访问网站的内容部分,并且可以编辑或发布页面,包括私人页面和其他人创建的文章。
编辑者可以管理类别和审核评论。他们无法访问网站设置、主题或插件。
上面的示例显示了编辑器将看到的仪表盘。菜单项包括文章、媒体、页面、评论、项目、个人资料和工具。
(5)管理员
管理员拥有对后端的完全访问权限。这是标准WordPress安装中权限最高的WordPress用户角色。他们可以创建和编辑页面和文章、调整WordPress设置、安装主题和插件、编辑代码、控制用户权限等。他们可以导入和导出内容、管理网站选项和编辑仪表盘。
管理员可以更改其他管理员的用户角色,包括删除他们。此角色通常保留给站点所有者或管理员。
上图显示管理员可以访问WordPress仪表盘中的所有内容。这是迄今为止唯一显示可用更新的图像,所有示例都来自同一个测试网站。
超级管理员
超级管理员仅适用于多站点网络,它是权限最高的WordPress角色。多站点是一个WordPress网站,它控制网络上的多个网站。这意味着超级管理员可以同时控制多个WordPress网站,包括他们的管理员。
超级管理员具有与管理员相同的权限,但他们可以控制整个网络。他们可以创建、编辑和删除网络上的网站。
几个管理员任务被转移到超级管理员。普通管理员不再有权上传、安装或删除插件或主题。此外,管理员不再有权修改用户信息。
他们可以控制网络上的哪些站点可以访问哪些主题和插件。它们可以同时跨网络执行更新。超级管理员安装插件和主题,网络上每个 WordPress 网站的管理员都可以控制激活它们。
多站点有一个额外的管理面板,只有超级管理员才能访问。从上图(取自 WordPress 词汇表)可以看出,超级管理员仪表盘包括一个网络管理员菜单,显示网络上的站点、用户、主题和插件。其他一切都与管理员仪表板相匹配。
分配用户角色
分配用户角色时,请使用最小权限原则 (PLoP)。这仅授予用户执行任务所需的权限,并确保他们无法访问不应访问的功能。
分配用户角色的能力非常符合这一原则,因为您可以根据每个人的工作描述来分配它们。您可以拥有高级员工、初级员工、实习生、客座作者等,并且每个人都有他们工作所需的特定访问权限。
这样才可以更好地控制WordPress网站,并防止用户进行您不希望他们进行的更改。这也可以防止用户意外更改设置或执行您没有准备好的更新。
如果您运行一个由一组内容创建者组成的网站,则该网站应该有一个管理员来管理网站,有一个编辑器来帮助管理作者,其他用户作为作者。这允许他们上传媒体,如果您发布包含大量图像的文章,这是一个不错的选择。新的作家和客人应该是贡献者。这为您提供了最佳的控制平衡。
手动添加新用户
管理员为网站添加新用户。在仪表板菜单中,转到用户>添加用户。填写用户信息,选择一种语言(如果您没有使用默认语言),生成密码,选中向他们发送电子邮件通知的复选框,然后从下拉框中选择用户的角色。准备好后,单击添加用户。
用户将在您为他们输入的地址收到一封电子邮件,该电子邮件将包含登录信息。
注:由于国内的服务器托管商可能禁用了WordPress默认使用的邮件发送端口,你可能需要为你的WordPress配置STMP邮局。
更改用户权限
管理员还可以更改当前用户的权限。转到WordPress 仪表板中的用户>所有用户。您将看到一个用户列表,此列表的工作方式与任何文章类型相同。在这里,您可以编辑、删除、查看、执行批量操作、添加新用户等。将鼠标悬停在您要编辑的用户上,然后在出现的菜单项中单击编辑。
滚动直到您看到名为显示名称的部分。您将看到一个标记为角色的下拉框。该框将显示该用户的当前级别。选择此框以将其打开。
选择要分配给该用户的用户级别。您通过第三方插件在网站上安装的每个角色都可供选择,因此您的选择可能与我的不同。滚动到页面底部并点击更新用户。
用户注册和默认用户角色
有时您希望用户能够注册为网站用户。这对电子商务、学习平台、会员网站等很有帮助。
您可以允许用户注册并为其设置默认用户角色。在仪表板菜单中,转到“设置” >“常规”。选中标记为任何人都可以注册的框。在此下方是一个下拉框,您可以在其中选择将分配给所有新用户的默认角色。
订阅者是默认设置,但您可以将其设置为您想要的任何角色,例如学生、会员等。不建议将默认设置设置为权限级别在订阅者以上的任何角色(或您网站的等效角色)。您不希望向不认识的任何人提供对网站的访问权限。
注册现在是登录页面上的一个选项。
一旦访问者点击注册,他们将看到登录表单,他们可以在其中输入用户名和电子邮件。一旦他们点击注册,确认将发送到他们输入的电子邮件。他们将使用默认用户角色注册。
如果您希望用户注册,您可以考虑在您的菜单或您的网站上放置一个链接作为号召性用语,以告知您的访问者这是一个选项。
使用插件编辑WordPress用户角色和权限
某些用户角色具有的某些能力存在一些问题。例如,贡献者不能上传图片,作者可以删除他们的所有内容。如果我们希望对网站的用户角色及权限进行调整,可以使用插件微调用户的功能。
1. Members
Members提供了编辑角色功能和创建新角色的工具。您也可以删除角色,可以为用户分配多个角色,内容限制允许您指定哪些角色可以访问内容。
角色显示网站上的每个角色。您可以编辑、删除、克隆和查看具有每个角色的用户。
创建新成员提供了一个编辑器,您可以在其中为每个任务选择每个功能。它包括您已安装的插件,例如示例中的Yoast。
侧边栏包含两个小工具,您可以在其中显示登录表单和用户列表。您可以控制显示的表单和信息。
价格:免费 | 查看更多
2. Ultimate Member
Ultimate Member提供了许多前端表单和配置文件的自定义选项。使用拖放构建器进行设计并添加条件逻辑和条件导航菜单。自定义用户角色并创建用户目录。您可以根据用户角色限制内容。创建会员网站并在侧边栏中显示会员搜索。
创建新用户角色为您提供了详细选项,包括管理和一般权限、配置文件访问、主页选项、登录、注销和删除选项。
功能列表非常庞大,选择您希望用户角色包括的功能。
拖放式表单构建器包含多个可帮助您入门的表单。
价格:免费 | 更多信息
3. User Role Editor
User Role Editor提供单个仪表板来自定义和创建新角色和功能。所有选项都用复选框选中,您可以为每个用户分配能力,也可以为每个用户分配多个角色。
编辑器可以轻松编辑任何角色的功能。通过单击选择所需的选项。
通过从头开始创建角色或复制另一个角色来添加角色。
添加任何角色都可以使用的新功能。
价格:免费 | 更多信息
4. PublishPress Capabilities
PublishPress Capabilities支持创建自定义用户角色并通过从列表中选择每个角色来选择它们的功能。您可以完全控制每个权限。您还可以控制分类法。从头开始创建新角色、克隆角色或编辑当前角色。
选择您希望每个角色拥有的能力。选择编辑、删除、阅读、其他 WordPress 核心和附加功能。附加功能提供了大量选项。您可以添加功能,将它们设置为特定于类型、特定于分类法等。
只需输入名称即可添加新角色,然后您可以编辑该角色的能力。
价格:免费 | 更多信息
5. Advanced Access Manager
高级访问管理器让您可以管理任何角色对您的内容的访问,这包括个人用户和访问者。您还可以定义对页面、文章、类别、自定义文章类型和自定义分类法的默认访问权限。
访问设置界面提供用户和操作列表。管理、编辑、克隆或删除任何角色。选择用户角色、个人用户、未登录的访问者和默认访问权限。
您可以单独调整每个用户的能力。
为任何角色创建新功能。
它包括一个用于侧边栏的自定义登录小部件。
价格:免费 | 更多信息
其他WordPress角色和权限插件
这里还有一些可备选的插件:
- WPFront User Role Editor
- View Admin As
使用代码编辑WordPress用户角色和权限
即使这六个角色具有预定义的功能,您也可以使用代码手动添加或删除这些功能。如果您或者团队有人对PHP熟悉,使用代码来定义用户角色及权限。但,建议大多数WordPress用户使用插件来实现。
使用代码控制WordPress角色和权限可以比插件更干净、更轻量,且不必担心插件更新问题。
添加、删除和克隆角色
与自定义当前角色相比,创建新角色有时更有益。
可以使用 add_role()
和 remove_role()
函数创建和删除角色。
例如,此代码添加了一个名为 投稿客串人(Guest Contributor )的角色以及以下功能:
add_role( 'guest_contributor', 'Guest Contributor', array( 'read' => true, 'edit_posts' => true, 'delete_posts' => true, ) );
此代码删除贡献者角色:
remove_role( 'contributor' );
要克隆当前用户角色,请使用以下代码:
add_role( 'clone', 'Clone', get_role( 'user_role_name' )->capabilities );
将“clone”替换为您希望新用户角色具有的名称。将“user_role_name”替换为您要克隆的角色。这为您提供了一个与另一个角色的能力相匹配的新角色。然后您可以修改新角色的能力。
添加或删除角色能力
您可以使用 WP_Role 类对象的 add_cap()
和 remove_cap()
方法自定义现有角色功能。
此代码使编辑器能够激活插件:
// Get the editor role object. $role = get_role( 'editor' ); // Add ability to activate plugins. $role->add_cap( 'activate_plugins' );
此代码删除了从作者用户角色中删除文章的功能:
// Get the author role object. $role = get_role( 'author' ); // Remove deleting posts capability. $role->remove_cap( 'delete_posts' );
添加或删除特定用户功能
您还可以使用 WP_User 类对象的 add_cap()
和 remove_cap()
方法为特定用户自定义功能。
例如,此代码使用户能够切换主题并删除管理类别的功能:
// Get the user object by user ID. You can also get user object by slug, email address, or login name. $user = get_user_by( 'id', 1 ); // Add ability to switch themes. $user->add_cap( 'switch_themes' ); // Remove manage categories capability. $user->remove_cap( 'manage_categories' );
设置WordPress用户角色和权限的提示
以下是一些设置WordPress用户角色和权限的提示。
1. 将默认用户角色设置得尽可能低级别。
默认设置为订阅者。不建议更改它,除非它未能完全满足您特定网站的需求,例如自定义文章类型。即便如此,还是建议使用尽可能低级别的角色。
2. 根据他们需要的访问级别为每个用户选择角色。
为用户提供尽可能低的级别。这减少了具有更高级别访问权限的用户数量,从而简化了他们的工作并提高了安全性。
这也可以防止用户进行未经授权的更改,例如删除内容、自定义代码、更改主题、添加或删除插件等。
给用户一个较低的角色并根据需要增加它比给他们一个更高的角色并因为错误或更糟的事情而后悔要安全得多。只给你完全信任的人更高的角色。
3. 拥有尽可能少的管理员。
可以访问主题、插件和其他设置的人越少越好。理想情况下,一个WordPress网站应该有一个管理员。
此外,有一些编辑,其余的被分配为作者或贡献者。作者角色非常适合与您一起工作了足够长的时间以信任他们的工作的人。贡献者角色是新内容创作者的绝佳选择。
4. 对于单人网站,为自己创建一个编辑角色。
创建编辑角色可以将管理任务与日常博客角色分开。管理员用户名不会在站点上可见,这有助于防止黑客攻击。即使编辑角色被黑客入侵,管理员角色仍然安全。
5. 使用代码或插件微调用户角色。
标准用户权限对大多数网站都有帮助,但您可能需要自定义角色或创建新角色。例如,您可能希望某人有权访问上传媒体,但不能发布或删除其内容。
这可以通过代码来完成,但插件使这尽可能简单。我们在文章中介绍的插件提供了最佳选择。建议大家认真查看每一个,看看哪些功能最适合您的需求。
仅当您熟悉PHP时才使用代码。代码确实具有将代码精简为您想要的确切功能的优势。这使得代码更轻。此外,不必担心更新插件、更改插件的功能或不再支持插件。
小结
WordPress用户角色和权限是您网站设置的重要组成部分。它们使您可以更好地控制谁可以访问哪些功能。这有助于管理网站团队并开启发展团队的可能性,以便其他人可以执行某些操作、创建内容等。
由于用户只能访问某些功能,因此用户角色有助于简化每个用户的工作。这些限制还可以提高您网站的安全性,因为它限制了每个用户的权限。
可以使用插件或代码自定义WordPress用户角色和权限,让您可以更好地控制每个用户。
用户角色易于理解和使用。充分了解 WordPress 用户角色,然后仔细选择这些角色将有助于您的网站更加高效和安全。如果您的WordPress网站有多个用户,则应设置WordPress用户角色。