不用插件定制修改 WordPress 角色的权限

很多 WordPress 站点的用户其实只有站长一个人,就算是多人博客,用户其实只有那么几个,并且这几个用户的所有人又是比较熟悉并且相互信任的几个人。这些情况下,WordPress 默认的几个角色的权限分配足够我们使用了。

roles

但是如果把 WordPress 作为一个 CMS 系统来使用的话,默认的角色权限管理恐怕是不能胜任了,于是就有了角色权限管理的插件,其中最常用的估计是 User Role Editor,这个插件可以很方便的添加角色,并为角色分配权限,如果角色比较多,用这个插件增强 WordPress 的权限管理功能是很方便的。

不用插件而是通过代码修改 WordPress 角色的权限

喜欢 WordPress 就是因为他的简单实用,很多人对插件比较不感冒(包括我),并且有时候我们只需要为默认的角色添加或删除某个权限,这种情况下就需要我们动动手脚,通过代码来解决问题了,莫惊慌,代码很简单。

//给作者角色添加可以编辑其他用户的文章的权限
add_action( 'admin_init', function () {
    //先获取作者角色
    $role = get_role( 'author' );
    //然后添加编辑其他用户文章权限
    $role->add_cap( 'edit_others_posts' );
});

代码很简单,用的 WordPress 官方 API,更多信息请看官方文章:关于 WordPress 角色和权限的官方文档

Related Posts

0条评论

    1. 这个就要在插件里面单独控制了,添加插件菜单的时候:

      add_pages_page( page_title, menu_title, capability, handle, );

      把capability设置成editer或者author,然后相应的功能外边加上:

      if ( current_user_can( $capability ) ) {
        //如果有相应的权限,才允许执行这里的功能
      }

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注