添加删除WordPress后台管理菜单分隔符

  • 酉灿
  • WordPress
  • Jul 23, 2021

不知道大家有没有注意过WordPress后台仪表盘和评论菜单下面有个空的分隔符,而其它菜单下面却没有,如下图:

 

添加删除WordPress后台管理菜单分隔符

添加删除WordPress后台管理菜单分隔符

 

 

 

 

 

分隔符代码位于wp-admin目录menu.php文件中。

第62行:


 
  1. $menu[4] = array( '', 'read', 'separator1', '', 'wp-menu-separator' );

184行:


 
  1. $menu[59] = array( '', 'read', 'separator2', '', 'wp-menu-separator' );

很多年前就有用户反馈给WP官方建议删除分隔符,官方说分隔符用于区别分隔不同的管理模块,不预采纳,但分隔符没有任何样式只有个高度,真没有保留的意义。

删除分隔符

如果你也和我一样看着这个突兀的间距空格就是不顺眼,那么这里教你删除这个分隔符,最简单的方法是直接删除menu.php文件中那两行代码,不过下次更新程序还要再次删除,比较麻烦,一劳永逸的方法:

将下面代码添加到主题函数模板functions.php中即可。


 
  1. function zm_remove_menu() {
  2. global $menu;
  3. unset($menu[4]);
  4. unset($menu[59]);
  5. }
  6. add_action('admin_head', 'zm_remove_menu');

如果还想删除其它的菜单项,可以打开menu.php文件查看对应的菜单项的位置编号比如媒体为$menu[10],照猫画虎在上面代码中加上一句:


 
  1. unset($menu[10]);

以此类推出。

默认菜单位置编号

2 仪表盘 4 分隔符 5 文章 10 媒体 15 链接 20 页面 25 评论 59 分隔符 60 外观 65 插件 70 用户 75 工具 80 设置 99 分隔符

注:有些插件会将自己菜单加到文章的上面,会影响上面的编号。

附其它删除菜单的方法

 

 

 

添加分隔符

作为主题设计者如果想在主题自定义菜单部分添加分隔符,用于提示用户这是主题特有的,例如在编号10的媒体菜单下添加,可以这么写:


 
  1. add_action('admin_menu', function () {
  2. global $menu;
  3. $menu[11] = ['', 'read', '', '', 'wp-menu-separator'];
  4. });

定义分隔符样式

想定义这个分隔符样式可以这么写


 
  1. function zm_separator_style(){
  2. echo'<style type="text/css">.separator {border-bottom: 1px solid #2271b1;}</style>';
  3. }
  4. add_action('admin_head', 'zm_separator_style');

同样添加到主题函数模板functions.php中。

移动菜单位置

如果想自定义菜单位置,例如将文章菜单移动到媒体菜单下面,可以这么写:


 
  1. function zm_move_menu () {
  2. global $menu;
  3. $menu[11] = $menu[5]; // 将编号5的文章菜单移动到编号10的媒体菜单下
  4. unset($menu[5]); // 移除原文章菜单
  5. }
  6. add_action('admin_menu', 'zm_move_menu');

其它以此类推。

打赏