wordpress知识库
网站首页 > 知识库 > wordpress知识 >

wordpress后台定制隐藏后台菜单、仪表盘、顶栏工具

2019/02/08
wordpress后台后台中有很多的菜单、顶栏工具,并且有些功能实际上用得并不多,甚至根本没有过。如果你和我一样,嫌看着眼烦,那么你可以使用代码来将其隐藏掉。为什么不用wordpress插件呢,在我学习wordpress之后,我一直是能用代码解决,绝对不用插件。

如果你的网站有很多个用户,那么你可以选择对特定群体用户进行隐藏

先写一个函数,获取当前用户id

function is_manage(){
    global $current_user;
    get_currentuserinfo();
    return $current_user->ID;
}

移除左侧菜单

//移除一些菜单
add_action('admin_menu',
    function(){
        //非管理员
        if(is_manage() != 1){

顶级菜单

remove_menu_page( 'index.php' );//移除仪表盘
remove_menu_page( 'edit.php' );//移除文章
remove_menu_page( 'upload.php' );//移除媒体
remove_menu_page( 'link-manager.php' );//移除链接
remove_menu_page( 'edit.php?post_type=page' );//移除页面
remove_menu_page( 'edit-comments.php' );//移除评论
remove_menu_page( 'themes.php' );//移除外观
remove_menu_page( 'plugins.php' );//移除插件
remove_menu_page( 'users.php' );//移除用户
remove_menu_page( 'tools.php' );//移除工具
remove_menu_page( 'options-general.php' );//移除设置

如果你有自定义的一些文章类型、分类、页面等等,在参数中指定该菜单的名称

子菜单

remove_submenu_page( 'index.php','update-core.php' );//移除仪表盘中更新
remove_submenu_page( 'plugins.php','plugin-editor.php' );//移除插件中插件编辑
remove_submenu_page( 'options-general.php','options-discussion.php' );//移除设置中讨论
remove_submenu_page( 'options-general.php','options-media.php' );//移除设置中媒体
remove_submenu_page( 'options-general.php','options-privacy.php' );//移除设置中隐私
remove_submenu_page( 'plugins.php','plugin-editor.php' );//移除插件中插件编辑
remove_submenu_page( 'options-general.php','options-discussion.php' );//移除设置中讨论
remove_submenu_page( 'options-general.php','options-media.php' );//移除设置中媒体
remove_submenu_page( 'options-general.php','options-privacy.php' );//移除设置中隐私

函数参数先指定顶级菜单,再指定子菜单。如果你有自定义子菜单,同理。

如果你想隐藏外观中的自定义子菜单,则需要单独使用这个代码。请拿到当前函数之外使用

add_filter('map_meta_cap', function($caps, $cap){ if($cap == 'customize'){ return ['do_not_allow']; } return $caps; },10,2);

仪表盘中的内容

remove_meta_box('dashboard_site_health', 'dashboard', 'normal');//站点健康状态
remove_meta_box('dashboard_right_now', 'dashboard', 'normal');//概览
remove_meta_box('dashboard_quick_press', 'dashboard', 'core');//快速草稿 
remove_meta_box('dashboard_primary', 'dashboard', 'core');//wordpress其它新闻
remove_meta_box('dashboard_activity', 'dashboard', 'core');//动态

通过f12,可以查看内容的id,将id放进函数中即可隐藏

顶部工具栏

add_action('admin_bar_menu',
    function($wp_toolbar){
        if(is_manage() != 1){
            $wp_toolbar->remove_node('wp-logo'); //去掉Wordpress LOGO
            //$wp_toolbar->remove_node('site-name'); //去掉网站名称
            $wp_toolbar->remove_node('view-site'); //去掉查看站点
            $wp_toolbar->remove_node('updates'); //去掉更新提醒
            $wp_toolbar->remove_node('comments'); //去掉评论提醒
            $wp_toolbar->remove_node('new-content'); //去掉新建文件
            //$wp_toolbar->remove_node('top-secondary'); //用户信息
        }
    },999,2
);

仪表盘内容隐藏类似,在审查元素里,id为wp-admin-bar-new-content,其中new-content就是函数参数