WordPress中创建用户角色的相关PHP函数使用详解


Posted in PHP onDecember 25, 2015

WordPress 默认有 “订阅者”、“投稿者”、“作者”、“编辑” 和 “管理员” 五个用户角色,权限由低到高,但默认的五个角色可能不够我们用,这时可以使用 add_role() 函数创建一个角色。

用法

add_role( $role, $display_name, $capabilities );

参数

$role

(字符串)(必须)用户角色 ID

默认值:None

$display_name

(字符串)(必须)用户角色显示在前台的名字

默认值:None

$capabilities

(数组)(可选)用户角色的权限

默认值:None

返回值

如果此角色 ID 的角色不存在并且创建成功,则返回 WP_Role 类;用户角色已经存在或者创建失败则返回空。

例子

$result = add_role( 'new_role_created', __( '新建用户角色例子', 'Bing' ), array(
  'read' => true,
  'edit_posts' => true,
  'delete_posts' => false
) );
if( $result ) echo '用户角色创建成功!';
else echo '因为用户角色已经存在或者其它原因导致创建失败!';

其它

此函数位于:wp-includes/capabilities.php

WordPress 的用户系统看起来虽然很简单,但扩展性非常强,好好的利用插件,可以把 WordPress 的用户系统打造的不比专业的论坛系统差。

用户的权限管理是用户系统很重要的一部分,虽然这几个身份的权限设计的非常科学,但还是无法满足每个人的需求,本文就来教你怎么自定义这几个身份的权限。
首先安装并启用 Capability Manager Enhanced 插件,进入 “用户” → “Capabilities” 进行权限管理。

首先在右边的 “Select New Role” 选择一个要编辑权限的身份,然后在左边进行权限调整。

WordPress中创建用户角色的相关PHP函数使用详解

调整好之后保存即可。

PHP 相关文章推荐
phpmyadmin中配置文件现在需要绝密的短语密码的解决方法
Feb 11 PHP
php 错误处理经验分享
Oct 11 PHP
基于PHPExcel的常用方法总结
Jun 13 PHP
PHP Class&Object -- 解析PHP实现二叉树
Jun 25 PHP
php读取纯真ip数据库使用示例
Jan 26 PHP
php获取mysql字段名称和其它信息的例子
Apr 14 PHP
php使用递归计算文件夹大小
Dec 24 PHP
Laravel 5框架学习之数据库迁移(Migrations)
Apr 08 PHP
php保存任意网络图片到服务器的方法
Apr 14 PHP
PHP和Mysql中转UTF8编码问题汇总
Oct 10 PHP
浅谈PHP中的数据传输CURL
Sep 06 PHP
laravel 实现登陆后返回登陆前的页面方法
Oct 03 PHP
详解WordPress中提醒安装插件以及隐藏插件的功能实现
Dec 25 #PHP
给WordPress的编辑后台添加提示框的代码实例分享
Dec 25 #PHP
smarty高级特性之对象的使用方法
Dec 25 #PHP
详解WordPress开发中过滤属性以及Sql语句的函数使用
Dec 25 #PHP
smarty高级特性之过滤器的使用方法
Dec 25 #PHP
WordPress中编写自定义存储字段的相关PHP函数解析
Dec 25 #PHP
PHP加密解密实例分析
Dec 25 #PHP
You might like
PHP删除目录及目录下所有文件的方法详解
2013/06/06 PHP
php显示页码分页类的封装
2017/06/08 PHP
关于JavaScript的一些看法
2009/05/27 Javascript
通过身份证号得到出生日期和性别的js代码
2009/11/23 Javascript
js call方法详细介绍(js 的继承)
2013/11/18 Javascript
js判断数据类型如判断是否为数组是否为字符串等等
2014/01/15 Javascript
js数字转换为float,取N位小数
2014/02/08 Javascript
javascript实现的一个带下拉框功能的文本框
2014/05/08 Javascript
使用AJAX实现Web页面进度条的实例分享
2016/05/06 Javascript
详谈js中数组(array)和对象(object)的区别
2017/02/27 Javascript
Vue2.0使用过程常见的一些问题总结学习
2017/04/10 Javascript
Nodejs实现多文件夹文件同步
2018/10/17 NodeJs
Antd-vue Table组件添加Click事件,实现点击某行数据教程
2020/11/17 Javascript
[01:05:12]2014 DOTA2国际邀请赛中国区预选赛 TongFu VS CIS-GAME
2014/05/21 DOTA
python获取当前日期和时间的方法
2015/04/30 Python
对Python进行数据分析_关于Package的安装问题
2017/05/22 Python
Python基于OpenCV实现视频的人脸检测
2018/01/23 Python
Tesserocr库的正确安装方式
2018/10/19 Python
python: 自动安装缺失库文件的方法
2018/10/22 Python
python 列表推导式使用详解
2019/08/29 Python
python3下pygame如何实现显示中文
2020/01/11 Python
Python基础之列表常见操作经典实例详解
2020/02/26 Python
python实现批量修改文件名
2020/03/23 Python
tensorflow 2.1.0 安装与实战教程(CASIA FACE v5)
2020/06/30 Python
CSS中垂直居中的简单实现方法
2015/07/06 HTML / CSS
Lenox官网:精美的瓷器&独特的礼品
2017/02/12 全球购物
澳大利亚家居用品零售商:Harris Scarfe
2020/10/10 全球购物
如何安装ruby on rails
2014/02/09 面试题
最新会计专业求职信范文
2014/01/28 职场文书
国庆节演讲稿
2014/05/27 职场文书
建筑工程质量通病防治方案
2014/06/08 职场文书
党的群众路线剖析材料
2014/10/09 职场文书
办理收楼委托书范本
2014/10/09 职场文书
2015年试用期工作总结范文
2015/05/28 职场文书
利用ajax+php实现商品价格计算
2021/03/31 PHP
MySQL中distinct和count(*)的使用方法比较
2021/05/26 MySQL