簡體   English   中英

在 WordPress 中添加管理菜單分隔符

[英]Adding Admin Menu Separators in WordPress

我正在嘗試創建一個管理菜單分隔符,允許您將它們與代碼一起放入。 這是函數:

function add_admin_menu_separator($position) {
  global $menu;
  $index = 0;
  foreach($menu as $offset => $section) {
    if (substr($section[2],0,9)=='separator')
    $index++;
    if ($offset>=$position) {
      $menu[$position] = array('','read',"separator{$index}",'','wp-menu-separator');
      break;
    }
  }
  ksort( $menu );
}

添加操作位在下面

add_action('admin_init','admin_menu_separator');
    
function admin_menu_separator() {
  add_admin_menu_separator(220);
}

它工作正常,但在重新排列菜單時會在 WordPress 中產生以下錯誤:

> Warning: Invalid argument supplied for foreach() in /home/user/public_html/wp-creation.com/wp-content/themes/liquid_theme_0.4_licensed/functions.php on line 174
    
> Warning: ksort() expects parameter 1 to be array, null given in /home/user/public_html/wp-creation.com/wp-content/themes/liquid_theme_0.4_licensed/functions.php on line 182

你應該掛鈎admin_menu

add_action('admin_menu','admin_menu_separator');

並使用低於220東西。 我在系統中得到的最大offset99

檢查這個非常好的類來處理管理菜單。
它出現在這個 WPSE 問題中: 向管理菜單添加分隔符?

你可以簡單地在functions.php中添加它

add_action('admin_menu', function () {   
  global $menu;
  $menu[49] = ['', 'read', '', '', 'wp-menu-separator'];
});

其中 49 是分隔符位置,您必須記住分隔符位置可以替換您的菜單元素,如果它具有相同的位置。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM