三分钟热度教程:WordPress插件开发之了解WordPress的用户角色权限管理

11月/23日/WordPress/浏览 95

因为,我只能保持三分钟热度,所以,知识点一定要在三分钟之内讲完……


除了个人博客这种简单的系统,一旦需要用户提交数据或者管理用户能力,用户权限管理是一个系统中必备的模块。对此 WordPress 也有相当完善的支持,可以参考文章:《WordPress用户角色和权限($capability)汇总》


用户角色(Roles)只是表示用户属于哪个组的一种奇特方式。每个组都有一组特定的预定义功能。除了WordPress内置的用户角色,我们还可以自定义用户角色和删除不需要的用户角色,参考文章《WordPress函数:add_role 添加自定义用户角色《WordPress函数:remove_role 删除用户角色》


用户功能(Capabilities)是您分配给每个用户或用户角色的特定权限。同样的,用户功能也可以根据开发需求增加或减少。在WordPress的设计方案中用户权限是依附在用户角色上的。具体方法,可以参考下面代码:


function zhuige_simple_role_caps() {
	// 获取 zhuige_role 对象
	$role = get_role( 'zhuige_role' );

	// 给 zhuige_role 增加编辑其他文章的权限
	$role->add_cap( 'edit_others_posts', true );
}

// 优先级要保住在添加了 zhuige_role 之后。因为,添加 zhuige_role 角色一般也在 init 钩子里。
add_action( 'init', 'zhuige_simple_role_caps', 11 );


在对数据进行操作时,务必检查用户角色和能力,不要对用户赋予不必要的权限。


发表评论

暂无评论,抢个沙发...

客服 工单