2017-03-06 25 views
3

我在WordPress中有5個左右的自定義菜單位置。現在我需要將每個位置都作爲WordPress管理面板中的主側欄導航。我已用add_action方法嘗試過。這是我的代碼片段。如何在WordPress中添加菜單位置作爲管理員控制檯菜單

add_action('admin_menu', 'sep_menuexample_create_menu'); 
function sep_menuexample_create_menu() { 
//create custom top-level menu 
add_menu_page('My Plugin Settings Page', 'Menu Example Settings','manage_options','navmenu.php', 'sep_menuexample_settings_page',screen_icon('edit')); 
} 
function sep_menuexample_settings_page(){ 

} 

我該如何實現它?

+0

自定義菜單位置,意味着你要添加的站點菜單一些自定義鏈接? –

+0

不,我爲前端添加了一些導航菜單位置,我們用它來管理外觀 - >菜單 - >管理位置。在那裏,我添加了假設,主菜單,頁腳菜單等。現在我需要添加自定義管理員側欄菜單,如主菜單,頁腳菜單等。我需要將它鏈接到通訊錄菜單項。 – hakkim

回答

0

這隻適用於jQuery。創建你想要的管理菜單和子菜單,並在admin_head中添加jQuery以在所有管理頁面中運行。

這是找到您的管理菜單錨點並更改其href屬性的問題。在這個例子中,管理員菜單修改爲指向nav-menus.php?action=edit&menu=MENU_ID

add_action('admin_menu', function() { 
    add_menu_page( 
     'My custom menu Settings', 
     'Menus', 
     'manage_options', 
     'my-menus', 
     function(){ echo 'This does not show up'; }, 
     null, 
     25 
    ); 

    add_submenu_page( 
     'my-menus' , 
     'My custom submenu-1', 
     'Menu 1', 
     'manage_options', 
     'my-menus', // <---- Same as main menu, change to "sub-menu1" to see effect 
     function(){} 
    ); 
    add_submenu_page( 
     'my-menus' , 
     'My custom submenu-2', 
     'Menu 2', 
     'manage_options', 
     'sub-menu2', 
     function(){} 
    ); 
}); 

# See http://stackoverflow.com/questions/5673269/ for <<<HTML usage 
add_action('admin_head', function(){ 
    echo <<<HTML 
    <script type="text/javascript"> 
     jQuery(document).ready(function($) { 
      topmenu = $('#toplevel_page_my-menus'); 
      nav_menu1 = 'nav-menus.php?action=edit&menu=1'; 
      nav_menu2 = 'nav-menus.php?action=edit&menu=2'; 
      topmenu.find('a[href="admin.php?page=my-menus"]').attr('href',nav_menu1); 
      topmenu.find('a[href="admin.php?page=sub-menu2"]').attr('href',nav_menu2); 
     });  
    </script> 
HTML; 
}); 
相關問題