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

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” 选择一个要编辑权限的身份,然后在左边进行权限调整。

调整好之后保存即可。

(0)

相关推荐

  • 给WordPress的编辑后台添加提示框的代码实例分享

    WordPress 3.5 新添加了一个提示框功能,可以创建一个提示框,然后指向任何元素,比如下边的例子: 本文就来教你怎么创建一个这样的提示框. 首先需要添加提示框的脚本,这样才能使用提示框的 JS 方法. //挂载提示框脚本 function Bing_admin_pointer_enqueue_scripts(){ wp_enqueue_style( 'wp-pointer' ); wp_enqueue_script( 'wp-pointer' ); } add_action( 'admi

  • 详解WordPress开发中过滤属性以及Sql语句的函数使用

    esc_attr()(过滤属性) 一般在写 Html 代码的标签属性的时候会是下边的格式: <input type="text" name="rep" value="rep_value" /> 那如果 value 属性是动态输出的呢? <input type="text" name="rep" value="<?php echo get_option( 'rep_value

  • 详解WordPress中提醒安装插件以及隐藏插件的功能实现

    提醒用户当前主题需要的插件 很多主题都需要一些插件的支持,这时你就需要提醒用户需要安装的插件,本文将教你,怎么在后台显眼的位置提醒用户当前主题要安装的插件. 最终的效果类似下图: 只需要用 admin_notices 钩子,在后台标题下边输出一个警告框,再用 is_plugin_active() 函数判断插件是否启用即可. /** *WordPress 提醒用户当前主题需要的插件 *http://www.endskin.com/plugins-messages/ */ function Bing

  • WordPress判断用户是否登录的代码

    is_user_logged_in() 说明 根据当前访问者是否登录返回布尔值true或false. 参数 该函数不接受任何参数. 用法 复制代码 代码如下: <?php if ( is_user_logged_in() ) { ... } ?> 示例 根据当前访问者的登录情况,使用is_user_logged_in()函数在主题文件中展示不同输出结果. 复制代码 代码如下: <?php if ( is_user_logged_in() ) { echo 'Welcome, regist

  • WordPress中编写自定义存储字段的相关PHP函数解析

    WordPress 的自定义字段就是文章的 meta 信息(元信息),利用这个功能,可以扩展文章的功能,是学习 WordPress 插件开发和主题深度开发的必备知识,方便给文章储存一些额外的自定义内容. 自定义字段不光给插件开发者使用,WordPress 的特色图像.自定义页面模板等功能的信息都储存在自定义字段的表单里边. 在文章编辑器界面的 "自定义栏目" 板块可以管理除了名字开头是 "_" 的字段(没有 "自定义栏目" 板块请在右上角的 &q

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

    WordPress 默认有 "订阅者"."投稿者"."作者"."编辑" 和 "管理员" 五个用户角色,权限由低到高,但默认的五个角色可能不够我们用,这时可以使用 add_role() 函数创建一个角色. 用法 add_role( $role, $display_name, $capabilities ); 参数 $role (字符串)(必须)用户角色 ID 默认值:None $display_name (字

  • C# / VB.NET 在PPT中创建、编辑PPT SmartArt图形的方法详解

    本文介绍通过C#和VB.NET程序代码来创建和编辑PPT文档中的SmartArt图形.文中将分两个操作示例来演示创建和编辑结果. 使用工具:Spire.Presentation for .NET hotfix 5.9.5 Dll文件引用: 方式1:下载包.下载后,解压,打开Bin文件夹,根据自己用的.NET Framework选择相应的文件夹,如:此示例中使用的是NET4.0,即打开NET4.0文件,找到Spire.Presentation.dll文件.找到dll文件后,在vs程序中添加引用该d

  • Angular7中创建组件/自定义指令/管道的方法实例详解

    组件 使用命令创建组件 •创建组件的命令:ng generate component 组件名 •生成的组件组成: 组件名.html .组件名.ts.组件名.less.组件名.spec.ts •在组件的控制器 @Component({ selector: 'app-heroes', templateUrl: './heroes.component.html', styleUrls: ['./heroes.component.less'] }) 手动创建组件 1.创建一个组件ts文件 2.在组件中设

  • 对python中的six.moves模块的下载函数urlretrieve详解

    实验环境:windows 7,anaconda 3(python 3.5),tensorflow(gpu/cpu) 函数介绍:所用函数为six.moves下的urllib中的函数,调用如下urllib.request.urlretrieve(url,[filepath,[recall_func,[data]]]).简单介绍一下,url是必填的指的是下载地址,filepath指的是保存的本地地址,recall_func指的是回调函数,下载过程中会调用可以用来显示下载进度. 实验代码:以下载cifa

  • Laravel6.2中用于用户登录的新密码确认流程详解

    Laravel 昨天发布了 v6.2 版本,它添加了一个新的密码确认功能,该功能使你可以要求已登录的用户重新输入密码,然后才能访问路由. 在你执行敏感操作的时候,这个功能就类似 GitHub 确认对话框.在 Laravel 中你可以轻松的设置它,所以让我们来试用一下新功能,以便你可以更好的了解它的工作原理: 设置 首先,为了更直观的了解这个新功能,我们创建一个新的 Laravel 应用: laravel new confirm-app cd confirm-app composer requir

  • C++中继承与多态的基础虚函数类详解

    前言 本文主要给大家介绍了关于C++中继承与多态的基础虚函数类的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. 虚函数类 继承中我们经常提到虚拟继承,现在我们来探究这种的虚函数,虚函数类的成员函数前面加virtual关键字,则这个成员函数称为虚函数,不要小看这个虚函数,他可以解决继承中许多棘手的问题,而对于多态那他更重要了,没有它就没有多态,所以这个知识点非常重要,以及后面介绍的虚函数表都极其重要,一定要认真的理解~ 现在开始概念虚函数就又引出一个概念,那就是重写(覆

  • WordPress中用于检索模版的相关PHP函数使用解析

    locate_template() 用来检索存在的优先级最高的模板文件,还能直接加载模板文件. locate_template() 函数检索时,如果有子主题则优先使用子主题的模板,没有再继续检索父主题. 用法 locate_template( $template_names, $load, $require_once ); 参数 $template_names (数组)(必须)要引入的模板文件名(需要扩展名),会根据数组逐个匹配文件是否存在,越前边的优先级越高. 默认值:None $load (

  • 一些php项目中比较通用的php自建函数的详解

    以下一些php函数是我们it动力最常用的项目开发函数,这些函数还算是在比较多的项目中使用到的,也是比较通用的.1.请求接口的处理函数 复制代码 代码如下: /**  * curl访问程序接口  * @param string  * @return array  */  function getCurlDate($url, $datas, $key) {      $datas['time'] = $_SERVER['REQUEST_TIME'] + 300;      $post_data['p

  • 在WordPress中创建自定义页面模板方法详解

    WordPress 页面模板是特定的模板文件,用于特定页面或页面组,这些用于单页数据的模板显示在前端.我们还可以在 WordPress 中创建自定义页面模板. 在本文中,我们将学习如何在 WordPress 中创建自定义页面模板,以及我们如何将自定义模板分配给 WordPress 中的特定页面或页面组. 在 WordPress 中创建自定义页面模板 默认情况下,WordPress 允许使用默认模板文件page.php创建页面和文章来处理前端的外观. 我们还可以对默认模板文件 ( page.php

  • IDEA中创建maven项目引入相关依赖无法下载jar问题及解决方案

    先如今idea中的spring项目,springBoot的项目的开发一般都是基于maven创建的项目.这大大简化我我们对于各种依赖包的管理,同时又使得各种依赖包方便管理.但是当maven中的依赖下载出现问题的时候也是很头痛. 问题场景 在公司的项目中用到了fastjson依赖,而依赖的版本是动态获取的,如图 但是在某天启动项目的时候报错,一查看原来是maven中fastjson依赖的原因, 这时大部分的人的操作应该和我一样: 操作1 点击maven的更新按钮,让maven自动下载对应的jar包到

随机推荐