久久精品国产99国产精品免费看_中文成人在线_日本在线播放视频_精品国产一区二区三区在线观看

怎么添加自定義角色和權(quán)限? - wordpress開發(fā)

有關(guān) WordPress 角色和權(quán)限的知識(shí),WordPress 強(qiáng)大的用戶角色和權(quán)限管理系統(tǒng)可以讓我們隨時(shí)創(chuàng)建復(fù)雜的項(xiàng)目

wordpress自帶的角色只有幾個(gè),在復(fù)雜的需求下很難滿足,那就自己創(chuàng)建自定義的角色和權(quán)限吧。

需要注意的是,在WordPress中是不能直接在后臺(tái)添加新的用戶組,而是需要通過(guò)WordPress的角色和權(quán)限API來(lái)添加用戶角色。

怎么添加自定義角色和權(quán)限? - wordpress開發(fā)

請(qǐng)備份數(shù)據(jù)庫(kù),謹(jǐn)慎操作

方案一

以修改“訂閱者”為“忠實(shí)會(huì)員”為例,復(fù)制下面的代碼到 wordpress 主題根目錄下的 function.php 文件<?php下面。

function wps_change_role_name() {
    global $wp_roles;
    if ( ! isset( $wp_roles ) )
        $wp_roles = new WP_Roles();
    $wp_roles->roles['subscriber']['name'] = '忠實(shí)會(huì)員';
    $wp_roles->role_names['subscriber'] = '忠實(shí)會(huì)員';
}
add_action('init', 'wps_change_role_name');

對(duì)照修改第 5、6 行中你想要編輯的角色英文名稱(小寫字母)所對(duì)應(yīng)的中文名稱,保存即可。

方案二

新建?自定義角色,例如:VIP用戶,將以下代碼添加至主題根目錄下的functions.php文件的<?php下保存。

// 新建VIP用戶角色

add_action( 'admin_init', 'remove_shop_caps');
function remove_shop_caps() {
    // 首先獲取訂閱者角色。
    $subscriber = get_role('subscriber');
    // 然后基于訂閱者角色的權(quán)限新建一個(gè)角色。
    $vip = add_role('vip','VIP用戶',$subscriber->capabilities);
}
//刪除“VIP用戶”角色
function wps_remove_role() {
    remove_role( 'vip' );
}
add_action( 'init', 'wps_remove_role' );

以上兩段代碼使用后即可刪除,無(wú)需留在 functions.php 文件中。

方案三

新建?自定義角色,例如:新角色,添加新角色,并為其賦予分類管理、多媒體文件上傳、文章編輯等基本權(quán)限。

/*
$role_name:相當(dāng)于角色的ID;
$display_name:角色的顯示名稱,支持本地化字符;
$capabilities:該角色應(yīng)具有的能力組成的數(shù)組(能力ID/名稱為ID,值為值組成的數(shù)組)
*/
add_role( $role_name, $display_name, $capabilities );
add_role( 'pama', '銀牌會(huì)員', array('read'=>true,'level_0'=>true) );

將以下代碼添加至主題根目錄下的functions.php文件的<?php下保存。

function tp_add_role() {
    add_role( 'newbie', '新角色',
             array(
                  'read',
                  'edit_posts',
                  'delete_posts',
                  'manage_categories',
                  'upload_files',
                  )
    );
}
add_action( 'init', 'tp_add_role' );
//刪除“新角色”角色
function wps_remove_role() {
    remove_role( 'newbie' );
}
add_action( 'init', 'wps_remove_role' );

以上兩段代碼使用后即可刪除,無(wú)需留在 functions.php 文件中。

賦予權(quán)限

//獲取 "author" 的角色對(duì)象
$role = get_role( 'author' );

//為角色對(duì)象添加 "organize_gallery" 權(quán)限
$role->add_cap( 'organize_gallery' );

刪除權(quán)限

此函數(shù)為自行構(gòu)造,僅供測(cè)試

//獲取 "author" 的角色對(duì)象
$user = get_role( 'author' );

// 為給定用戶移除一種能力/權(quán)限
$user->remove_cap( $cap_name );
// 為給定用戶移除全部能力
$user->remove_all_caps();

刪除角色

刪除訂閱者、投稿者、作者、編輯等不需要的默認(rèn)角色。

function wps_remove_role() {
    remove_role( 'contributor' );
    remove_role( 'subscriber' );
    remove_role( 'author' );
    remove_role( 'editor' );
}
add_action( 'init', 'wps_remove_role' );

代碼中 2 至 5 行為想要?jiǎng)h除的默認(rèn)角色,依次為訂閱者、投稿者、作者、編輯,可根據(jù)需要?jiǎng)h減之。

使用后即可刪除,無(wú)需留在 functions.php 文件中。

WordPress的權(quán)限類

介紹WordPress 用于角色和權(quán)限幕后工作的三個(gè)類,以及這些類提供的接口,我們可以在插件中進(jìn)行高級(jí)權(quán)限管理。這三個(gè)類是:

  • WP_Roles
  • WP_Role
  • WP_User

這三個(gè)類的源代碼可以在?wp-includes/capabilities.php?中找到,源代碼注釋寫得很詳細(xì),下面總結(jié)一下怎樣使用這些類:

WP_Roles 類

WP_Roles 是一般的角色管理類,當(dāng)我們?cè)诓寮惺褂玫臅r(shí)候,可以不用實(shí)例化一個(gè)新的對(duì)象,而是直接使用 WordPress 默認(rèn)創(chuàng)建的一個(gè)全局對(duì)象?$wp_roles,可以在任何地方使用它,只要事先聲明global?即可:

global $wp_roles;

我們上面使用的函數(shù)?add_role()?和?remove_role()?實(shí)際上是?$wp_roles->add_role()?和?$wp_roles->remove_role()?的別名。因此,我們也可以直接使用?$wp_roles?對(duì)象添加和刪除角色,例如:

global $wp_roles;
//添加新角色,和add_role()功能一樣
$wp_roles->add_role( $role, $display_name, $capabilities )

//刪除角色, 和remove_role()功能一樣
$wp_roles->;remove_role( $role );

同樣也可以使用這種方法得到一個(gè)角色:

global $wp_roles;

//通過(guò)角色名稱得到一個(gè)角色,和get_role()功能一樣
$wp_roles->get_role( $role );

還可以得到一個(gè)可用角色列表,含有角色的名稱和角色的顯示名稱。這個(gè)對(duì)想為用戶提供一個(gè)接口,改變權(quán)限分配時(shí)候非常有用的。

global $wp_roles;

//得到一個(gè)值列表包括 $role_name => $display_name
$roles = $wp_roles->get_names();

最后可以使用?$wp_roles?添加和刪除權(quán)限,此對(duì)象幾乎包括所有的角色和權(quán)限操作。

global $wp_roles;

//為角色$role添加權(quán)限$cap
$wp_roles->add_cap( $role, $cap );

//為角色$role刪除權(quán)限$cap
$wp_roles->remove_cap( $role, $cap );

//例子
$wp_roles->add_cap( 'administrator', 'manage_galleries' );
$wp_roles->remove_cap( 'subscriber', 'view_galleries' );

WP_Role 類

這是一個(gè)非常簡(jiǎn)單的類,它的功能就是添加和刪除權(quán)限。

//得到角色對(duì)象
$role_object = get_role( $role_name );

//為角色對(duì)象添加權(quán)限$cap
$role_object->add_cap( $capability_name );

//為角色對(duì)象刪除權(quán)限$cap
$role_object->remove_cap( $capability_name );

WP_User類

這個(gè)類可以管理每個(gè)用戶的角色和權(quán)限,這意味著可以為一個(gè)特定具體的用戶分配多個(gè)角色,或者為當(dāng)前用戶添加特定的權(quán)限,不論他目前是什么角色。

首先需要獲取用戶對(duì)象來(lái)操縱它的角色和權(quán)限:

//通過(guò)用戶ID得到用戶對(duì)象
$user = new WP_User( $id );

//或者通過(guò)用戶名
$user = new WP_User( null, $name );

我們可以通過(guò)用戶ID或用戶名得到一個(gè)用戶對(duì)象。對(duì)于第二種方法,第一個(gè)參數(shù)必須是空的(null或空字符串),如:

//通過(guò)ID得到管理員對(duì)象
$admin = new WP_User( 1 );

//通過(guò)用戶名得到管理員對(duì)象
$admin = new WP_User( null, 'admin' );

一旦得到了用戶對(duì)象,就可以為這個(gè)用戶的添加另一個(gè)角色,而無(wú)需修改他目前的角色,這意味著用戶可以有多個(gè)角色:

$user->add_role( $role_name );

也可以使用?remove_role(),來(lái)為該用戶刪除某個(gè)角色:

$user->remove_role( $role_name );

還可以為該用戶設(shè)置一個(gè)角色,這意味著該用戶將被刪除當(dāng)前所有的角色,并分配一個(gè)新的角色:

$user->set_role( $role_name );

對(duì)于權(quán)限操作,也有很多的方法來(lái)做各種事情:

//檢查該用戶是否具有某種權(quán)限或角色名稱
if ( $user->has_cap( $cap_name ) ) {
    //做一些事
}

//為用戶添加權(quán)限
$user->add_cap( $cap_name );

//為用戶刪除權(quán)限
$user->remove_cap( $cap_name );

//刪除用戶所有權(quán)限
$user->remove_all_caps();

角色和權(quán)限總結(jié)

以上就是所有有關(guān) WordPress 角色和權(quán)限的知識(shí),WordPress 強(qiáng)大的用戶角色和權(quán)限管理系統(tǒng)可以讓我們隨時(shí)創(chuàng)建復(fù)雜的項(xiàng)目。

權(quán)限表一覽

內(nèi)置權(quán)限表一覽 - wordpress開發(fā)

不同的用戶與權(quán)限

不同的用戶,不同的權(quán)限-WordPress開發(fā)

給TA贊賞
共{{data.count}}人
人已贊賞
??
Npcink上的部份代碼及教程來(lái)源于互聯(lián)網(wǎng),僅供網(wǎng)友學(xué)習(xí)交流,若您喜歡本文可附上原文鏈接隨意轉(zhuǎn)載。
無(wú)意侵害您的權(quán)益,請(qǐng)發(fā)送郵件至 1355471563#qq.com 或點(diǎn)擊右側(cè) 私信:Muze 反饋,我們將盡快處理。
?
購(gòu)物車
優(yōu)惠劵
搜索
久久精品国产99国产精品免费看_中文成人在线_日本在线播放视频_精品国产一区二区三区在线观看

    9000px;">

      欧美综合久久久| 欧美激情一区二区| 国产精品久久久久久久久快鸭| 五月天国产精品| 精品久久久影院| 成人一区二区在线观看| 自拍偷拍亚洲综合| 5858s免费视频成人| 国产精品系列在线观看| 亚洲三级在线免费观看| 欧美夫妻性生活| 国产乱人伦偷精品视频免下载| 国产精品白丝在线| 欧美一级免费大片| voyeur盗摄精品| 免费一级片91| 一区二区三区视频在线看| 精品国产亚洲一区二区三区在线观看| fc2成人免费人成在线观看播放| 亚洲成人动漫一区| 欧美国产精品一区| 日韩免费电影网站| 91福利国产成人精品照片| 老司机精品视频一区二区三区| 国产精品久久久一本精品 | 精品午夜一区二区三区在线观看| 国产欧美日韩精品a在线观看| 欧美三级视频在线| 成人久久久精品乱码一区二区三区| 亚洲丶国产丶欧美一区二区三区| 国产欧美日韩卡一| 久久综合中文字幕| 欧美一区二区三区视频免费播放| 色菇凉天天综合网| 97精品国产露脸对白| 国内外成人在线视频| 免费人成黄页网站在线一区二区| 亚洲精品你懂的| 亚洲精品第一国产综合野| 中文字幕成人av| 国产日韩成人精品| 亚洲国产精品成人综合色在线婷婷| 精品国产乱码久久久久久牛牛| 91精品免费在线观看| 欧美一级午夜免费电影| 欧美日本韩国一区二区三区视频| 色婷婷久久久综合中文字幕| 99久久国产综合精品麻豆| 成人免费毛片嘿嘿连载视频| 大白屁股一区二区视频| 成人福利视频网站| 91在线看国产| 欧美主播一区二区三区美女| 色国产综合视频| 在线国产电影不卡| 欧美剧情电影在线观看完整版免费励志电影 | 精品国产伦一区二区三区免费| 日韩女优制服丝袜电影| 精品国产91久久久久久久妲己| 久久美女艺术照精彩视频福利播放| 亚洲精品一区二区三区影院| 精品国产网站在线观看| 亚洲国产精品二十页| 亚洲视频在线观看一区| 亚洲狠狠爱一区二区三区| 日韩av一区二区在线影视| 国产在线播放一区三区四| 高清不卡一区二区在线| 91丨九色丨黑人外教| 欧美另类videos死尸| 久久久亚洲高清| 亚洲靠逼com| 蜜臀国产一区二区三区在线播放| 国产精品一线二线三线| 色先锋资源久久综合| 欧美精品高清视频| 中文成人综合网| 日韩黄色免费网站| 成人免费三级在线| 欧美日韩成人在线| 久久女同精品一区二区| 亚洲精品写真福利| 精品在线一区二区| 欧美性色欧美a在线播放| 精品国产凹凸成av人网站| 国产精品理论在线观看| 五月天激情小说综合| 国产91丝袜在线播放| 欧美高清视频在线高清观看mv色露露十八 | 亚洲男人的天堂在线观看| 午夜精品一区在线观看| 不卡一区在线观看| 精品久久一区二区| 亚洲成av人片一区二区三区| 国产成人综合网| 欧美一区二区久久久| 亚洲综合色噜噜狠狠| 成人高清伦理免费影院在线观看| 欧美成人乱码一区二区三区| 亚洲一区二区在线免费看| 成人蜜臀av电影| 欧美精品一区二区三区蜜臀| 三级成人在线视频| 亚洲国产日韩a在线播放| 一本久久a久久免费精品不卡| 日韩国产欧美在线观看| 国产区在线观看成人精品| 亚洲伊人色欲综合网| 夜夜嗨av一区二区三区四季av| 久久99国产精品久久99| 97国产一区二区| 精品国产免费一区二区三区四区 | 免费看黄色91| 欧美另类z0zxhd电影| 一区二区三区日韩欧美精品| 国产91丝袜在线播放0| 精品日韩99亚洲| 另类人妖一区二区av| 精品美女被调教视频大全网站| 亚洲成人激情社区| 欧美日本在线看| 天天色天天爱天天射综合| 欧美福利一区二区| 麻豆91免费观看| 337p日本欧洲亚洲大胆精品| 国产一区二区三区在线观看精品 | 日韩免费高清av| 久久国产精品99久久人人澡| 日韩视频一区二区| 激情综合色综合久久| 久久女同精品一区二区| 成人丝袜高跟foot| 亚洲女女做受ⅹxx高潮| 欧美视频在线一区| 日本一道高清亚洲日美韩| 久久色在线观看| 成人伦理片在线| 亚洲国产日韩a在线播放性色| 欧美乱妇23p| 国产精品一区二区免费不卡| 中文字幕在线观看不卡| 欧美欧美午夜aⅴ在线观看| 麻豆91精品91久久久的内涵| 久久九九久精品国产免费直播| 高清久久久久久| 亚洲成人资源网| 国产日韩欧美在线一区| 欧美色老头old∨ideo| 国产制服丝袜一区| 亚洲色图视频免费播放| 91精品在线观看入口| 成人国产在线观看| 亚洲r级在线视频| 国产日韩欧美精品综合| 欧美三级日本三级少妇99| 国产精品一二三| 亚洲成人综合在线| 国产日韩欧美精品电影三级在线| 欧美三区在线观看| 97久久超碰国产精品电影| 日本不卡一二三| 最新日韩在线视频| 日韩欧美第一区| 在线视频一区二区三| 狠狠久久亚洲欧美| 亚洲精品中文字幕乱码三区 | 国产丝袜美腿一区二区三区| 色综合色狠狠综合色| 国产成人夜色高潮福利影视| 亚洲成人黄色影院| 亚洲精品高清视频在线观看| 国产女人aaa级久久久级 | 久久久久久久久一| 在线综合亚洲欧美在线视频| 91网站在线播放| 国产91丝袜在线18| 国产一区二区三区不卡在线观看| 性做久久久久久| 亚洲综合男人的天堂| 成人免费在线观看入口| 国产精品―色哟哟| 国产亚洲欧美一级| 久久女同互慰一区二区三区| 日韩欧美国产综合一区| 91精品国产一区二区| 欧美日本一区二区三区四区| 91久久久免费一区二区| 一本大道综合伊人精品热热| 北条麻妃一区二区三区| 国产麻豆成人传媒免费观看| 九九视频精品免费| 韩国精品在线观看| 激情欧美一区二区三区在线观看| 日本午夜精品视频在线观看| 日韩精品免费专区| 久久成人久久鬼色| 高清国产一区二区三区| 91色综合久久久久婷婷| 欧美日韩激情一区二区| 欧美一区二区视频网站|