當(dāng)前位置:首頁(yè)>WordPress建站>后臺(tái)定制>如何對(duì)WordPress特定用戶(hù)角色隱藏后臺(tái)管理通知

如何對(duì)WordPress特定用戶(hù)角色隱藏后臺(tái)管理通知

當(dāng)你在 WordPress 管理后臺(tái)界面時(shí),你會(huì)遇到一些“管理通知(Admin Notices)”,讓你知道錯(cuò)誤、更新設(shè)置、請(qǐng)求操作等等。

這些通知一般是WordPress內(nèi)核、主題和插件添加的,倡萌之前分享過(guò)《如何為 WordPress 主題和插件添加管理通知(Admin Notices)》,如果你是開(kāi)發(fā)者,可以看一下。今天我們要分享的內(nèi)容是:如何對(duì)WordPress特定用戶(hù)角色隱藏后臺(tái)管理通知

為什么要對(duì)特定角色隱藏呢?舉個(gè)最簡(jiǎn)單但是很常用的例子:你網(wǎng)站后臺(tái)有一些非管理員的用戶(hù)可以訪問(wèn),但是很多后臺(tái)的通知信息對(duì)他們來(lái)說(shuō)都是多余的。這時(shí)候你就可以將這些信息對(duì)他們進(jìn)行屏蔽。

實(shí)現(xiàn)的方法很簡(jiǎn)單,將下面的代碼添加到主題的 functions.php 文件即可:

/**
 * 對(duì)非管理員角色隱藏后臺(tái)通知
 * http://www.ydqwiac.cn/hide-admin-notices-for-a-specific-role-in-wordpress.html
 */
function wpkj_hide_notices(){
    if (!current_user_can('manage_options')) { //如果你要定義其他角色,需要修改這行的條件 
        remove_all_actions( 'admin_notices' );
    }
}
add_action( 'admin_head', 'wpkj_hide_notices', 10 );

現(xiàn)在我們來(lái)看下邏輯:

  1. 先創(chuàng)建了一個(gè)名為 wpkj_hide_notices 的函數(shù),然后掛載到 admin_head 這個(gè)鉤子,使函數(shù)生效。
  2. 在函數(shù)內(nèi)部,我們使用了一個(gè)判斷條件 current_user_can('manage_options') ,意思是如果當(dāng)前用戶(hù)可以 manage_options ,那就是管理員角色,然后我們?cè)谇懊嫣砑恿艘粋€(gè)感嘆號(hào) ! ,就使條件反過(guò)來(lái)了,如果當(dāng)前用戶(hù)不可以 manage_options ,那就是非管理員角色了。
  3. 判斷了如果當(dāng)前用戶(hù)不是管理員角色,就執(zhí)行 remove_all_actions( 'admin_notices' ) ,也就是用這個(gè)函數(shù)移除了所有后臺(tái)通知。

這里面涉及到的知識(shí)點(diǎn):

  1. admin_head 鉤子
  2. current_user_can() 函數(shù) 及 用戶(hù)角色能力
  3. admin_notices 鉤子 和 remove_all_actions() 函數(shù)
聲明:本站所有文章,如無(wú)特殊說(shuō)明或標(biāo)注,均為本站原創(chuàng)發(fā)布。任何個(gè)人或組織,在未征得本站同意時(shí),禁止復(fù)制、盜用、采集、發(fā)布本站內(nèi)容到任何網(wǎng)站、書(shū)籍等各類(lèi)媒體平臺(tái)。如若本站內(nèi)容侵犯了原著者的合法權(quán)益,可聯(lián)系我們進(jìn)行處理。

給TA打賞
共{{data.count}}人
人已打賞
歡迎關(guān)注WordPress大學(xué)公眾號(hào) WPDAXUE
后臺(tái)定制

WordPress 禁用Gutenberg古騰堡編輯器

2018-12-11 11:51:35

后臺(tái)定制

如何禁止客戶(hù)停用必要的WordPress插件

2019-12-6 9:51:30

0 條回復(fù) A文章作者 M管理員
    暫無(wú)討論,說(shuō)說(shuō)你的看法吧
?
個(gè)人中心
購(gòu)物車(chē)
優(yōu)惠劵
今日簽到
有新私信 私信列表
搜索

开阳县| 沁阳市| 大余县| 准格尔旗| 化州市| 江城| 绥芬河市| 金门县| 泸西县| 高台县| 东阿县| 古丈县| 洞口县| 江门市| 永兴县| 沙洋县| 邓州市| 南安市| 衢州市| 凤台县| 灵丘县| 张家港市| 南乐县| 衡水市| 敖汉旗| 西城区| 北京市| 宣汉县| 遂川县| 西和县| 邵阳县| 尚义县| 贺州市| 平度市| 育儿| 申扎县| 休宁县| 托里县| 巫溪县| 长岭县| 九龙城区|