Roles and Capabilities
设计WordPress角色功能是来赋予博客拥有者权限来控制和分配用户在博客中可以做什么,不可以做什么。一个博客拥有者必须能够管理并且能够使用以下的功能,例如写和编辑文章, 创建网页, 定义链接, 创建类别, 审核评论, 管理插件, 管理主题, 和管理其他的用户。工具赋予博客主人控制这些功能,能够给用户分配一个角色。
WordPress 2.0版本
WordPress2.0引进了角色的概念。WordPress分发'标准',有五个预先确定好的角色: 管理员, 编辑员, 作者, 投稿者, 和 订阅者。每个角色能够执行一系列任务,这些任务称为角色。有三十个角色,包括发表_文章, 审核_评论, 和编辑_用户。这些权限都预先分配给了每个角色。
管理员角色能够执行所有的权限。其它的角色能够执行的权限数目要少一点。例如,订阅者角色只能够阅读 和 级别_0 权限。一个特别的角色不应该被看做是比其它的角色要'高级'。而是,要将角色看作是,定义了用户在一个博客中的责任。
插件开发者很有可能修订'标准的'角色和权限,因为WordPress 开发者准许了未来可能会给用户分配一个或者更多的权限,或者直接将权限分配给一个用户。因为插件可能更改角色和权限,这篇文章中只提及了'标准的角色和权限。
博客主人的超级特权
起着最重要角色的人,是博客主人。一般来说,博客主人是负责维护和备份 WordPress MySQL 数据库以及管理WordPress文件库(程序,脚本,插件,主题,图像,上载的内容)。最后,博客的正常运行取决于博客的作者完成这个'最终的角色'。注:博客主人,在多数情况下,也起着管理员的角色,但是也可能会给其他的用户赋予 管理员角色。
角色总结
- 管理员-能够使用所有管理功能的人
- 编辑-能够发表文章,管理文章,管理其他人的文章,等的人。
- 作者-能够发表和管理自己的文章的人
- 供稿者-能够写文章并且管理自己的文章但是不能够发表文章
- 订阅者-能够阅读评论/发表评论/得到新的信件,等等。
角色
一个特别的用户在博客中的身份称为他们的角色。一个角色通常描述了一系列任务,称作权限,一个人能够执行这些能力。例如,管理员的角色包括了WordPress博客中可能执行的每个任务。另一方面,作者角色允许执行更少一点的权限。
WordPress2.0通过将相邻的,有相似权限的级别集中为逻辑的,指定的角色,这样,便简化了WordPress1.5的用户级别方法。
管理员
角色名称:管理员
权限:
:*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
:* 阅读
:*从2.1版本开始 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.3版本开始 unfiltered_upload
:*从2.5版本开始 edit_dashboard
:*从2.6版本开始 update_plugins
:*从2.6版本开始 delete_plugins
:*level_10
:* level_9
:* level_8
:* level_7
:* level_6
:* level_5
:* level_4
:* level_3
:* level_2
:* level_1
:* level_0
编辑
角色名:编辑
权限:
:* moderate_comments
:* manage_categories
:* manage_links
:* upload_files
:* unfiltered_html
:* edit_posts
:* edit_others_posts
:* edit_published_posts
:* publish_posts
:* edit_pages
:*read
:*从2.1版本开始 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
:* level_7
:* level_6
:* level_5
:* level_4
:* level_3
:* level_2
:* level_1
:* level_0
作者
角色名:作者权限:
:*upload_files :*edit_posts :*publish_posts :*read :* delete_posts 从2.1版本开始 :* delete_published_posts 从2.1版本开始 :* level_2 :* level_1 :* level_0供稿者
角色名供稿者
权限:
:*edit_posts
:*read
:*从2.1版本开始 delete_posts
:* level_1
:* level_0
订阅者
角色名:订阅者
权限:
:*阅读 :*level_0能力 vs. 角色表
Capability!!admin!!editor!!author!!contributor!!subscriber
bgcolor="#ABCDEF"| ||||||||
bgcolor="#ABCDEF"| ||||||||
bgcolor="#ABCDEF"| ||||||||
bgcolor="#ABCDEF"| ||||||||
bgcolor="#ABCDEF"| ||||||||
bgcolor="#ABCDEF"| ||||||||
bgcolor="#ABCDEF"| ||||||||
bgcolor="#ABCDEF"| ||||||||
bgcolor="#ABCDEF"| ||||||||
bgcolor="#ABCDEF"| ||||||||
bgcolor="#ABCDEF"| ||||||||
bgcolor="#ABCDEF"| ||||||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"|
bgcolor="#ABCDEF"| ||||||||
bgcolor="#ABCDEF"| ||||||||
bgcolor="#ABCDEF"| ||||||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||
bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"| ||bgcolor="#ABCDEF"|
能力
switch_themes
允许使用管理面板选项:
- 呈现
- 呈现->主题
edit_themes
允许使用管理面板选项:
- 呈现>主题编辑
- 呈现>当前主题选项
activate_plugins
允许使用管理面板 选项:edit_plugins
允许使用管理面板 选项:
edit_users
允许使用管理面板 选项:
edit_files
允许使用管理面板 选项:
- 管理 ->文件
manage_options
允许使用管理面板 选项:
- 选项->总的
- 选项->写
- 选项->阅读
- 选项->讨论
- 选项->Permalinks
- 选项->Miscellaneous
moderate_comments
允许使用管理面板 选项:
- 问题:这是空白的。我想用户可以接受和拒绝(=删除)等待审核的评论。他也可以删除其它的评论吗?Tordans 2006 四月八日17:56(格林尼治标准时间)
manage_categories
- Manage > Categories
允许使用管理面板 选项:
- 管理->类别
manage_links
允许使用管理面板 选项:
- 链接
- 链接>管理链接
- 链接>添加链接
- 链接>链接类别
- 链接>导入链接
upload_files
允许使用管理面板 选项:- 上传
导入
允许使用管理面板 选项:- 导入
unfiltered_html
允许用户在文章,网页或者评论中粘贴HTML 标记或者Javascript 编码。
注:允许没有信任值的用户使用这个选项,可能导致他们向你的博客上粘贴恶意的代码。
edit_posts
允许使用管理面板 选项:- 写
- 管理
- 写>写文章
- 管理>文章
- Manage > Comments -- The "show post", "edit post", "edit comment", and "delete comment" links are enabled only on own posts, since edit-comment.php looks for "current_user_can('edit_post', $comment->comment_post_ID)"'
- 管理>评论 -- 只在自己的文章中 "显示 文章"-链接; "编辑 文章"-, "编辑 评论"- 和 "删除 评论"-链接 ,因为edit-comment.php 查找 "current_user_can('edit_post', $comment->comment_post_ID)"'
- 管理->等待审核 -- 我认为供稿者只能看到menuitem 因为"审核_评论"权限需要查看评论列表(see moderate.php)。因此你在审核列表中可能都看不到你自己的文章的评论?!
edit_others_posts
- 管理>评论 -- 让用户删除和编辑每个评论请看看上面的编辑_文章)
- 通过函数get_others_drafts(),用户可以编辑其它用户的文章
- 用户可以在inline-uploading看到其它用户的图像[没有看到? 请看看inline-uploading.php]
edit_published_posts
用户可以编辑自己发表过的文章。默认没有这个权限。 core核查权限edit_posts,但是要求这个权限更改为edit_published_posts。
如果你不想让一个用户来编辑已经发表的文章,你可以移除这个权限。(请在角色管理器 插件主页上看看这个评论 )
publish_posts
用户可以
- 写一篇文章的时候,查看并且选择radiobox "发表"
- 看看并且使用他们的文章下面的"发表"-按钮(否则的话他们只能够保存草稿)
- 可以使用xmlrpc来发表 (否则他们会得到一个 "对不起, 你不能在这个网络博客或者类别上发表文章。")
edit_pages
允许使用管理面板选项:
- 写>编写网页 -- 允许使用"page-new.php"
- 管理>网页 -- 所有的用户都能够看到 "/wp-admin/edit-pages.php" 但是只有这里的用户才能够看到表格列表中的链接'编辑'和'删除' 。
据我所知,所有的编辑都可以互相编辑对方的网页。 Dave J. (Scoop0901) 16:38, 30 Jan 2007 (UTC) fixed typo]
阅读
允许使用管理面板选项:
- Dashboard
- 你的基本资料
只用在核心代码的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版本开始
delete_private_pages
从2.1版本开始
delete_private_pages
从2.1版本开始
delete_users
从2.1版本开始
delete_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
允许使用管理面板选项:- 为插件的向后兼容维护
用户级别到角色转换
- 用户级别 0 转换为 订阅者角色
- 用户级别1 转换为 投稿者角色
- 用户级别 2 转换为 作者角色
- 用户级别 3 转换为 作者角色
- 用户级别 4 转换为 作者角色
- 用户级别 5 转变为 编辑角色
- 用户级别 6 转变为 编辑角色
- 用户级别 7 转变为 编辑角色
- 用户级别 8 转变为 管理员角色
- 用户级别 9 转变为 管理员角色
- 用户级别 10 转变为 管理员角色
角色转换为用户级别
订阅者角色
用户级别0
投稿者 角色
用户级别1
作者角色
用户级别2,2,4
编辑角色
用户级别5,6,7
管理员角色
用户级别8,9,10
资源
- WordPress角色管理器插件 (是对于WordPress 2.0 以及更高的版本)
- Owen Winkler的角色管理器插件 (只用于WordPress 2.0.x)
- Ryan Boren's What's New in 2.0: 角色和权限
- Owen Winkler权限改变总览
- Hackers email list最初用户权限讨论