WordPress 的用户角色和权限

在 WordPress 中,用户角色(User Roles)和权限(Permissions)是管理网站内容、功能和访问控制的重要机制。WordPress 默认提供了几种不同的用户角色,每个角色拥有不同的权限级别。以下是常见的 WordPress 用户角色及其权限说明:


 一、WordPress 默认的用户角色及权限

角色名称 权限描述 可以执行的操作
管理员(Administrator) 最高权限 管理所有内容、插件、主题、用户、设置等
编辑者(Editor) 编辑和管理文章、页面、评论等 可以编辑其他用户的帖子,但不能安装插件或更改主题
作者(Author) 发布自己的文章 只能发布和编辑自己的文章,不能删除或编辑他人文章
投稿者(Contributor) 提交文章但需审核 只能提交文章,不能发布,需管理员或编辑审核
订阅者(Subscriber) 只能查看和编辑个人资料 无法发布或编辑任何内容

 二、如何使用这些角色

1. 添加或修改用户角色

  • 登录到 WordPress 后台(/wp-admin
  • 进入 用户 > 所有用户
  • 选择某个用户,点击 编辑
  • 角色 下拉菜单中选择新的角色
  • 点击 更新用户

2. 创建自定义角色(高级用法)

如果你需要更细粒度的权限控制,可以通过代码或插件创建自定义角色。

使用代码(通过 functions.php 或插件):


function create_custom_user_role() {
    add_role( 'custom_role', 'Custom Role', array(
        'read' => true,
        'edit_posts' => true,
        'delete_posts' => false,
        // 更多权限...
    ) );
}
add_action( 'init', 'create_custom_user_role' );

注意:不要直接在 functions.php 中写这个代码,除非你了解风险,否则建议使用插件如 User Role EditorMembers


 三、权限控制原理

WordPress 的权限系统基于 Capabilitis(能力),每个角色对应一组能力(capabilities)。例如:

  • administrator 角色拥有所有能力。
  • editor 拥有 edit_posts, publish_posts, delete_posts 等。
  • author 拥有 edit_posts, publish_posts
  • contributor 拥有 edit_posts
  • subscriber 只有 read

你可以通过以下方式检查或修改能力:

使用插件:

  • User Role Editor:可以可视化地修改角色的能力。
  • Members:提供更精细的权限管理。

使用代码:


// 获取当前用户角色
$user = wp_get_current_user();
echo $user->roles[0];
// 检查用户是否有某项能力
if ( current_user_can( 'edit_posts' ) ) {
    echo '用户可以编辑文章';
}

 四、常见问题解答

Q: 如何限制用户只能看到自己的文章?

A: 使用 User Role Editor 插件,设置角色只允许查看自己的文章。

Q: 如何让某些用户只能编辑特定页面?

A: 需要使用插件如 User Access ManagerAdvanced Access Manager 实现。

Q: 如何防止普通用户修改站点设置?

A: 不分配 manage_options 能力给非管理员角色即可。


 总结

角色 权限等级 适用场景
管理员 最高 网站所有者、开发人员
编辑者 内容审核、管理
作者 内容创作者
投稿者 初级内容提交者
订阅者 最低 注册用户,仅查看内容

如果你需要更复杂的权限控制(比如按分类、按页面、按时间等),推荐使用插件如:

  • User Role Editor
  • Members
  • Advanced Access Manager
  • User Capabilities

如果你有具体的使用场景(比如多用户协作、会员系统、企业网站等),我可以为你定制一个角色分配方案

附录

四,WordPress 的权限

管理员

activate_plugins
add_users
create_users
delete_others_pages
delete_others_posts
delete_pages
delete_plugins
delete_posts
delete_private_pages
delete_private_posts
delete_published_pages
delete_published_posts
delete_themes
delete_users
edit_dashboard
edit_files
edit_others_pages
edit_others_posts
edit_pages
edit_plugins
edit_posts
edit_private_pages
edit_private_posts
edit_published_pages
edit_published_posts
edit_theme_options
edit_themes
edit_users
export
import
install_plugins
install_themes
list_users
manage_categories
manage_links
manage_options
moderate_comments
promote_users
publish_pages
publish_posts
read_private_pages
read_private_posts
read
remove_users
switch_themes
unfiltered_html (not with Multisite. See Unfiltered MU)
unfiltered_upload
update_core
update_plugins
update_themes
upload_files

编辑

delete_others_pages
delete_others_posts
delete_pages
delete_posts
delete_private_pages
delete_private_posts
delete_published_pages
delete_published_posts
edit_others_pages
edit_others_posts
edit_pages
edit_posts
edit_private_pages
edit_private_posts
edit_published_pages
edit_published_posts
manage_categories
manage_links
moderate_comments
publish_pages
publish_posts
read
read_private_pages
read_private_posts
unfiltered_html (not with Multisite. See Unfiltered MU)
upload_files

作者

delete_posts
delete_published_posts
edit_posts
edit_published_posts
publish_posts
read
upload_files

投稿人

delete_posts
edit_posts
read

订阅者

read
收藏
评论
打赏
WordPress 用户信息
上一篇
WordPress 添加文章自定义字段
下一篇

0 条评论

像素鱼丸
81587 阅读
136 发布
3 收藏
动态
Mirage 主题 v2.52.0 发布
Mighty 企业主题 v1.9.0 发布
MirageV 主题 v2.6.4 发布
MirageV 主题 v2.6.0 发布
BotV 插件 v1.7.0 发布
FishV 主题 v1.14 发布
LandV 企业主题 v2.6.0 发布
MirageV-App 小程序 v1.2.2 发布
生成中...
真诚赞赏,手留余香
登录
注册
重置密码