去除wordpress管理员_去除WordPress管理面板不想要的菜单项方法

更新时间:2018-02-12    来源:WordPress    手机版     字体:

【www.bbyears.com--WordPress】

我们可以通过在 functions.php 文件中添加一段去除菜单项的功能函数来实现。

在当前主题的 functions.php 文件中添加以下代码:

 代码如下

function remove_menus() {
global $menu;
//下面列出需要去除的菜单项目
$restricted = array(__("Dashboard"), __("Posts"), __("Media"), __("Links"), __("Pages"), __("Appearance"), __("Tools"), __("Users"), __("Settings"), __("Comments"), __("Plugins"));
end ($menu);
while (prev($menu)){
$value = explode(" ",$menu[key($menu)][0]);
if(in_array($value[0] != NULL?$value[0]:"" , $restricted)){
unset($menu[key($menu)]);
}
}
}
// 去除边栏菜单
add_action("admin_menu", "remove_menus");

上面代码中的 $restricted 数组提供了全部菜单项,如果你全部将以上代码原封不动地复制到 functions.php 文件中,那么你的 WordPress 后台就没有任何菜单了,所以,你应该根据实际需要只去除其中不必要的菜单项。

 代码如下

$restricted 各个数组项所对应的菜单中英对照:
__(‘Dashboard’) : 控制板
__(‘Posts’) : 文章
__(‘Media’) : 媒体
__(‘Links’) : 链接
__(‘Pages’) : 页面
__(‘Comments’) : 评论
__(‘Appearance’) : 外观
__(‘Plugins’) : 插件
__(‘Users’) : 用户
__(‘Tools’) : 工具
__(‘Settings’) : 设置


如果你想按不同用户角色来去除相应的边栏菜单,可以添加一个用户等级的判断。我们可以这样做:给上面代码中提到的 add_action 添加一个判断语句,将它改为如下:

 代码如下

function remove_menus() {  
global $menu;  
// 这里的$restricted设定了外观和媒体两个菜单项
$restricted = array(__("Appearance"), __("Media"));  
end ($menu);  
while (prev($menu)){ 
$value = explode(" ",$menu[key($menu)][0]);  
if(in_array($value[0] != NULL?$value[0]:"" , $restricted)){
unset($menu[key($menu)]);
}  
}  

global $current_user;
get_currentuserinfo();  
//如果当前用户的等级小于4,那么就删除与之相应的菜单项  
if ($current_user->user_level < 4)   {      
add_action("admin_menu", "remove_menus");  
}


附:用户角色及其等级的对应关系如下:
0 级对应 订阅者
1 级对应 投稿者
2 – 4 级对应 作者
5 – 7 级对应 编辑
8 – 10 级对应 管理员

本文来源:http://www.bbyears.com/wangyezhizuo/39195.html