7

我已经创建并注册了一个管理页面作为“帖子”管理菜单下的子菜单。但问题是它出现在 wp 子菜单的末尾(即,在“标签”之后),

如何更改此自定义管理页面子菜单条目的顺序以显示在“添加新”之后?

我正在使用此功能在edit.php(帖子菜单)下注册我的子菜单

add_submenu_page( 
       'edit.php', 
       "my custom submenu", 
       "my custom submenu", 
       CAPABILITY, 
       'my_custom_submenu', 
       "scrollcore_newsroom_articles" 
     );
4

1 回答 1

14

找到了解决方案,只需将此函数添加到您的functions.php

/*Change menu-order*/

add_filter( 'custom_menu_order', 'so_18766477_submenu_order' );

function so_18766477_submenu_order( $menu_ord ) 
{
    global $submenu;

    // Enable the next line to see all menu orders
    //echo '<pre>'.print_r($submenu,true).'</pre>';

    $arr = array();
    $arr[] = $submenu['edit.php'][5];     //my original order was 5,10,15,16,17,18
    $arr[] = $submenu['edit.php'][10];
    $arr[] = $submenu['edit.php'][18];
    $arr[] = $submenu['edit.php'][17];
    $arr[] = $submenu['edit.php'][15];
    $arr[] = $submenu['edit.php'][16];
    $submenu['edit.php'] = $arr;

    return $menu_ord;
}

在这里通过选择edit.php,我的目标是“帖子”菜单。您可以选择任何您希望对其子菜单进行重新排序的文件,例如 plugins.php、themes.php、tools.php 等

于 2013-09-12T14:52:56.607 回答