本文实例讲述了WordPress后台删除不需要的侧边栏菜单方法。分享给大家供大家参考。
具体实现方法是在当前主题的functions.php中添加以下代码:
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)]);}
}
}
if ( is_admin() ) {
// 删除左侧菜单
add_action('admin_menu', 'remove_menus');
}
自定义要去除的顶级菜单
以上代码核心部分是一个函数remove_menus(),然后通过WordPress的动作接口函数add_action来执行remove_menus函数,在remove_menus函数中,通过$restricted数组来定义需要删除哪些菜单项,以上$restricted数组提供了全部菜单项,也就是说如果你全部将以上代码不做修改地复制到functions.php,那你的WordPress后台就没有任何菜单了,你应该根据实际需要去除菜单。
下面讲讲$restricted各个数组项对应的菜单:
__('Dashboard') : 控制板菜单
__('Posts') : 文章
__('Media') : 媒体
__('Links') : 链接
__('Pages') : 页面
__('Comments') : 评论
__('Appearance') : 外观
__('Plugins') : 插件
__('Users') : 用户
__('Tools') : 工具
__('Settings') : 设置
例如你只想去除评论和工具菜单,你只需改写以上代码第3行的$restricted数组代码如下:
根据用户角色去除菜单
wordpress共有5种角色:
administrator(管理员) editor(编辑) author(作者) contributor(投稿者) subscriber(订阅者)
判断角色方法举例:
去除非管理员用户后台一级菜单和二级菜单举例,在主题functions.php中添加如下代码:
function n_a_remove_menu_page(){
remove_submenu_page( 'edit.php', 'post-new.php' ); //移除"文章"下的"写文章"
remove_menu_page('tools.php');
remove_menu_page('edit-comments.php');
}
if(!current_user_can('administrator') && is_admin()){
add_action('admin_menu', 'n_a_remove_menu_page');
}