WordPress的角色(Roles)特点旨在允许博主控制并决定其他用户的可为与不可为。博主必须能够撰写和编辑日志,创建页面,定义链接,创建分类,管理评论,管理插件,管理外观主题以及管理其他用户。给予博主此种控制的工具即是为用户分派角色。
WordPress 2.0版
WordPress 2.0版中引入了角色的概念。5个WordPress预定义角色分别是:管理员,编辑,作者,贡献者和订阅者。各角色都可以执行一系列的任务,被称为能力(Capabilities),多达30种的各类能力包括有撰写和编辑日志,管理评论及管理其他用户。这些能力均被预先分派给各角色了。
管理员角色被允许执行所有可能的能力,而其他各角色的可执行能力则或多或少地受到限制。比如,订阅者角色仅被允许阅读,等级为0。不应把某特定角色看作高于其他某一角色,而应认为这些角色定义了用户在博客中的职责。
插件开发者们很可能会对目前这些标准的角色和能力进行修订,因为WordPress开发者们早已为单个用户多个角色还有用户能力直接指派的实现埋下了伏笔。由于插件可能会更改角色及能力,因此在此文中仅涉及标准的角色及能力。
博主的超级能力
扮演最重要角色的人即是博主了。博主一般都要负责MySQL 数据库的维护和备份以及WordPress文件存储库(程序,脚本,插件,外观主题,图片,上传内容)的管理。博客能够运行流畅完全得益于博主能够完美地演绎此举足轻重的角色。注:在大多数情况下,博客所有者(博主)会扮演管理员的角色,但他也可以将该角色指派给其他用户。
各角色简介
- 管理员 – 可以执行所有管理操作的人
- 编辑 – 可以发布日志,管理自己和他人日志的人
- 作者 – 可以发布并管理自己日志的人
- 贡献者 – 可以撰写并管理自己日志的人,但不能发布日志
- 订阅者 – 可以阅读评论,进行评论,接收新闻邮件的人
角色
博客中某特定用户的身份就是他们的角色。角色(Role)所描述的某用户可执行的一系列任务被称之为能力(Capabilities)。比如管理员这个角色拥有执行WordPress博客内的所有任务的能力。那么相对而言,作者这一角色只能执行所有能力之中的一部分而已。
使用相似权限将毗邻层卷入具有逻辑和名称的角色中,WordPress 2.0简化了WordPress 1.5的用户层方法。举例来说,Level 0就是订阅者角色具有的等级,而编辑角色则混合有Levels 5和6的权限等级。
管理员
角色名称:管理员(Administrator)
能力:
-
- switch_themes
- edit_themes
- activate_plugins
- edit_plugins
- edit_users
- edit_files
- manage_options
- moderate_comments
- manage_categories
- manage_links
- upload_files
- import
- unfiltered_html
- edit_posts
- edit_others_posts
- edit_published_posts
- publish_posts
- edit_pages
- read
- edit_others_pages 自2.1
- edit_published_pages 自2.1
- edit_published_pages 自2.1
- delete_pages 自2.1
- delete_others_pages 自2.1
- delete_published_pages 自 2.1
- delete_posts 自2.1
- delete_others_posts 自2.1
- delete_published_posts 自2.1
- delete_private_posts 自2.1
- edit_private_posts 自2.1
- read_private_posts 自2.1
- delete_private_pages 自2.1
- edit_private_pages 自2.1
- read_private_pages 自2.1
- delete_users 自2.1
- create_users 自2.1
- unfiltered_upload 自2.3
- edit_dashboard 自2.5
- update_plugins 自2.6
- delete_plugins 自2.6
- level_10
- level_9
- level_8
- level_7
- level_6
- level_5
- level_4
- level_3
- level_2
- level_1
- level_0
-
- switch_themes
- edit_themes
- activate_plugins
- edit_plugins
- edit_users
- edit_files
- manage_options
- moderate_comments
- manage_categories
- manage_links
- upload_files
- import
- unfiltered_html
- edit_posts
- edit_others_posts
- edit_published_posts
- publish_posts
- edit_pages
- read
- edit_others_pages 自2.1
- edit_published_pages 自2.1
- edit_published_pages 自2.1
- delete_pages 自2.1
- delete_others_pages 自2.1
- delete_published_pages 自 2.1
- delete_posts 自2.1
- delete_others_posts 自2.1
- delete_published_posts 自2.1
- delete_private_posts 自2.1
- edit_private_posts 自2.1
- read_private_posts 自2.1
- delete_private_pages 自2.1
- edit_private_pages 自2.1
- read_private_pages 自2.1
- delete_users 自2.1
- create_users 自2.1
- unfiltered_upload 自2.3
- edit_dashboard 自2.5
- update_plugins 自2.6
- delete_plugins 自2.6
- level_10
- level_9
- level_8
- level_7
- level_6
- level_5
- level_4
- level_3
- level_2
- level_1
- level_0
编辑
角色名称:编辑(Editor)
能力:
-
- moderate_comments
- manage_categories
- manage_links
- upload_files
- unfiltered_html
- edit_posts
- edit_others_posts
- edit_published_posts
- publish_posts
- edit_pages
- read
- edit_others_pages 自2.1
- edit_published_pages 自2.1
- edit_published_pages 自2.1
- delete_pages 自2.1
- delete_others_pages 自2.1
- delete_published_pages 自2.1
- delete_posts 自2.1
- delete_others_posts 自2.1
- delete_published_posts 自2.1
- delete_private_posts 自2.1
- edit_private_posts 自2.1
- read_private_posts 自2.1
- delete_private_pages 自2.1
- edit_private_pages 自2.1
- read_private_pages 自2.1
- level_7
- level_6
- level_5
- level_4
- level_3
- level_2
- level_1
- level_0
作者
角色名称:作者(Author)
能力:
贡献者
角色名称:贡献者(Contributor)
能力:
订阅者
角色名称:订阅者(Subscriber)
能力:
角色能力对照表
能力 | 管理员 | 编辑 | 作者 | 贡献者 | 订阅者 |
---|---|---|---|---|---|
switch_themes | |||||
edit_themes | |||||
activate_plugins | |||||
edit_plugins | |||||
edit_users | |||||
edit_files | |||||
manage_options | |||||
import | |||||
unfiltered_upload | |||||
edit_dashboard | |||||
update_plugins | |||||
delete_plugins | |||||
moderate_comments | |||||
manage_categories | |||||
manage_links | |||||
unfiltered_html | |||||
edit_published_posts | |||||
edit_others_posts | |||||
edit_pages | |||||
delete_users | |||||
create_users | |||||
edit_others_pages | |||||
edit_published_pages | |||||
publish_pages | |||||
delete_pages | |||||
delete_others_pages | |||||
delete_published_pages | |||||
delete_others_posts | |||||
delete_private_posts | |||||
edit_private_posts | |||||
read_private_posts | |||||
delete_private_pages | |||||
edit_private_pages | |||||
read_private_pages | |||||
upload_files | |||||
publish_posts | |||||
delete_published_posts | |||||
edit_posts | |||||
delete_posts | |||||
read | |||||
level_10 | |||||
level_9 | |||||
level_8 | |||||
level_7 | |||||
level_6 | |||||
level_5 | |||||
level_4 | |||||
level_3 | |||||
level_2 | |||||
level_1 | |||||
level_0 |
能力
switch_themes
允许访问管理面板的选项:
- 设计
- 设计 > 外观主题
- 设计 > 微件
edit_themes
允许访问管理面板的选项:
- 设计 > 外观主题编辑器
- 设计 > 当前外观主题选项
activate_plugins
允许访问管理面板的选项:
- 插件
- 插件 > 插件
edit_plugins
允许访问管理面板的选项:
- 插件 > 插件编辑器
edit_users
允许访问管理面板的选项:
- 用户
- 用户 > 作者&用户
edit_files
允许访问管理面板的选项:
- 管理 > 文件
manage_options
允许访问管理面板的选项:
- 选项 > 一般
- 选项 > 撰写
- 选项 > 阅读
- 选项 > 讨论
- 选项 > 永久链接
- 选项 > 杂项
moderate_comments
允许访问管理面板的选项:
- 问:此为空。我想用户可以在管理中接受和拒绝(=删除)某条评论。那么他是否可以删除其他评论呢?Tordans 2006年4月8日,17:56 (GMT)
manage_categories
允许访问管理面板的选项:
- 管理 > 分类
manage_links
允许访问管理面板的选项:
- 链接
- 链接 > 管理链接
- 链接 > 添加链接
- 链接 > 链接分类
- 链接 > 导入链接
upload_files
允许访问管理面板的选项:
- 上传
import
允许访问管理面板的选项:
- 导入
unfiltered_html
允许用户在页面,日志和评论中发布HTML标记,甚至可以发布Javascript代码。
注:对不信任的用户启用此选项可能会招致他们在你的博客中发布恶意代码。
edit_posts
允许访问管理面板的选项:
- 撰写
- 撰写 > 撰写日志
- 管理
- 管理 > 日志
- 管理 > 评论 — "显示日志","编辑日志","编辑评论"及"删除评论"链接尽对自己的日志启用,因为edit-comment.php会查找"current_user_can('edit_post', $comment->comment_post_ID)"'
- 管理 > 尚待审核
edit_others_posts
- 管理 > 评论 — 让用户删除和编辑所有评论(见前文中的edit_posts)
- 用户可以通过get_others_drafts() 函数编辑其他用户的日志
- 用户可查看其它用户联机上传中的图片[看不到吗?请参看inline-uploading.php]
edit_published_posts
用户可以编辑自己已发布的日志。此能力默认情况下是关闭的。core会检查edit_posts,但经要求被更改为edit_published_posts。
如果你不希望用户能够对自己已发布的日志进行编辑的话,请移除此能力。(另见Role Manager插件首页上的此条评论)。
publish_posts
用户可以
- 在撰写日志时看到并选择radiobox"发布"
- 在日志下看到并使用"发布"按钮(否则他们只能保存草稿)
- 使用xmlrpc来发布(否则会看到"对不起,你无法在此博客或分类中发布日志。")
edit_pages
允许访问管理面板的选项:
- 撰写 > 撰写页面 — 可访问"page-new.php"
- 管理 > 页面 — 所有用户可查看"/wp-admin/edit-pages.php",但仅在此可看到列表中的'编辑'和'删除'链接。
据我所知,所有的编辑(者)都可以编辑其他人的页面。Dave J. (Scoop0901),2007年1月30日 16:38(UTC)
read
允许访问管理面板的选项:
- 控制台
- 你的个人资料
除了menu.php,不于核心代码中任何地方使用
edit_others_pages
自2.1
edit_published_pages
自2.1
edit_published_pages
自2.1
delete_pages
自2.1
delete_others_pages
自2.1
delete_published_pages
自2.1
delete_posts
自2.1
delete_others_posts
自2.1
delete_published_posts
自2.1
delete_private_posts
自2.1
edit_private_posts
自2.1
read_private_posts
自2.1
delete_private_pages
自2.1
edit_private_pages
自2.1
read_private_pages
自2.1
delete_users
自2.1
create_users
自2.1
unfiltered_upload
自2.3
edit_dashboard
自2.5
update_plugins
自2.6
delete_plugins
自2.6
level_10
允许访问管理面板的选项:
- 为插件向后兼容性而保留
level_9
允许访问管理面板的选项:
- 为插件向后兼容性而保留
level_8
允许访问管理面板的选项:
- 为插件向后兼容性而保留
level_7
允许访问管理面板的选项:
- 为插件向后兼容性而保留
level_6
允许访问管理面板的选项:
- 为插件向后兼容性而保留
level_5
允许访问管理面板的选项:
- 为插件向后兼容性而保留
level_4
允许访问管理面板的选项:
- 为插件向后兼容性而保留
level_3
允许访问管理面板的选项:
- 为插件向后兼容性而保留
level_2
允许访问管理面板的选项:
- 为插件向后兼容性而保留
level_1
允许访问管理面板的选项:
- 为插件向后兼容性而保留
level_0
允许访问管理面板的选项:
- 为插件向后兼容性而保留
用户层向角色的转换
- 用户层Level 0 转为订阅者角色
- 用户层Level 1 转为贡献者角色
- 用户层Level 2 转为作者角色
- 用户层Level 3 转为作者角色
- 用户层Level 4 转为作者角色
- 用户层Level 5 转为编辑角色
- 用户层Level 6 转为编辑角色
- 用户层Level 7 转为编辑角色
- 用户层Level 8 转为管理员角色
- 用户层Level 9 转为管理员角色
- 用户层Level 10 转为管理员角色
角色向用户层的转换
订阅者角色
用户层Level 0
贡献者角色
用户层Level 1
作者角色
用户层Level 2,3和4
编辑角色
用户层Level 5,6和7
管理员角色
用户层Level 8,9和10
其他资源
- WordPress的Role Manager插件(适用于WordPress 2.0或更高版本)
- Role Scoper插件 (适用于WordPress 2.5或更高版本)
- Adminize插件
- Owen Winkler的Role Manager插件(仅适用于WordPress 2.0.x版)
- Ryan Boren的2.0新特色:角色和能力
- Owen Winkler的权限更改概述
- Hacker email列表原始用户能力的相关讨论
分类:中文手册