hi,你好!欢迎访问本站!登录
本站由网站地图腾讯云宝塔系统阿里云强势驱动
当前位置:首页 - 教程 - cms - 正文 君子好学,自强不息!

【WordPress建站】如何对WordPress特定用户角色隐藏后台管理通知

2019-11-13cms搜奇网30°c
A+ A-

当你在 WordPress 管理后台界面时,你会遇到一些“管理通知(Admin Notices)”,让你知道错误、更新设置、请求操作等等。

这些通知一般是WordPress内核、主题和插件添加的,倡萌之前分享过《如何为 WordPress 主题和插件添加管理通知(Admin Notices)》,如果你是开发者,可以看一下。今天我们要分享的内容是:如何对WordPress特定用户角色隐藏后台管理通知

为什么要对特定角色隐藏呢?举个最简单但是很常用的例子:你网站后台有一些非管理员的用户可以访问,但是很多后台的通知信息对他们来说都是多余的。这时候你就可以将这些信息对他们进行屏蔽。

实现的方法很简单,将下面的代码添加到主题的 functions.php 文件即可:

/**
 * 对非管理员角色隐藏后台通知
 * https://www.ki4.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 );

现在我们来看下逻辑:

  1. 先创建了一个名为 wpkj_hide_notices 的函数,然后挂载到 admin_head 这个钩子,使函数生效。
  2. 在函数内部,我们使用了一个判断条件 current_user_can('manage_options') ,意思是如果当前用户可以 manage_options ,那就是管理员角色,然后我们在前面添加了一个感叹号 ! ,就使条件反过来了,如果当前用户不可以 manage_options ,那就是非管理员角色了。
  3. 判断了如果当前用户不是管理员角色,就执行 remove_all_actions( 'admin_notices' ) ,也就是用这个函数移除了所有后台通知。

这里面涉及到的知识点:

  1. admin_head 钩子
  2. current_user_can() 函数 及 用户角色能力
  3. admin_notices 钩子 和 remove_all_actions() 函数
  选择打赏方式
微信赞助

打赏

QQ钱包

打赏

支付宝赞助

打赏

  移步手机端
【WordPress建站】如何对WordPress特定用户角色隐藏后台管理通知

1、打开你手机的二维码扫描APP
2、扫描左则的二维码
3、点击扫描获得的网址
4、可以在手机端阅读此文章
未定义标签

本文来源:搜奇网

本文地址:https://www.sou7.cn/281526.html

关注我们:微信搜索“搜奇网”添加我为好友

版权声明: 本文仅代表作者个人观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。请记住本站网址https://www.sou7.cn/搜奇网。

发表评论

选填

必填

必填

选填

请拖动滑块解锁
>>