WordPress 使用角色的概念来让博客的所有者对用户进行权限控制。博客所有者可以控制用户写文章、创建页面、管理插件、管理主题,以及管理其他用户的权限。博客所有者可以通过该工具分配用户权限。

WordPress 有五个预定义的角色: 管理员, 编辑, 作者, 投稿者 和 订阅者。每一种角色被允许执行一系列被称作为功能的任务。

在 WordPress 主题或者插件开发的过程中,经常遇到要判断登录用户的角色,我们可以使用 current_user_can() 来进行快速判断,语句如下:

//* 管理员(Administrator)
current_user_can( 'manage_options' ) 

//* 编辑(Editor)
current_user_can( 'publish_pages' ) && ! current_user_can( 'manage_options' )

//* 作者(Author)
current_user_can( 'publish_posts' ) && ! current_user_can( 'publish_pages' ) 

//* 投稿者(Contributor)
current_user_can( 'edit_posts' ) && ! current_user_can( 'publish_posts' ) 

//* 订阅者(Subscriber)
current_user_can( 'read' ) && ! current_user_can( 'edit_posts' )

使用的时候只要判断以上条件就行了,比如:

if ( current_user_can( 'manage_options' ) ) {
    echo '当前用户为管理员';
}