2014-12-02 120 views
0

我想出來的我的模板吐每一頁上這個菜單,在我的主題的header.php文件:我的自定義菜單在Wordpress中沒有顯示?

enter image description here

注:主題自帶的菜單3點的位置,但我會用這些對不同的菜單,因此我不能使用這些預先存在的位置。

我試着用這functions.php將其註冊:

function register_my_menu() { 
     register_nav_menu('utility-menu',__('Utility')); 
} 
add_action('init', 'register_my_menu'); 

這將註冊它,var_dump(get_registered_nav_menus());回報:

array(4) { 
    ["menu-header"]=> 
    string(11) "Menu Header" 
    ["menu-top"]=> 
    string(8) "Menu Top" 
    ["wpv-push-menu"]=> 
    string(9) "Push Menu" 
    ["utility-menu"]=> 
    string(7) "Utility" 
} 

但是,這似乎並沒有聯繫起來。我明顯地以錯誤的方式做事,有人可以指出我不理解的事情嗎?我想知道如何正確取出菜單的正確方法。

wp_nav_menu(array('name' => 'Utility')); 
wp_nav_menu(array('theme_location' => 'utility-menu')); 

似乎拉不同的菜單。

回答

1

您應該在after_setup_theme期間註冊您的菜單,而不是init

add_action('after_setup_theme', 'register_my_menu'); 
function register_my_menu(){ 
    register_nav_menu('utility-menu', 'Utility Menu'); 
} 

然後,在你的菜單管理,保證分配任何你想要的菜單功能菜單(你會通過菜單頭,菜單頂部,等看到菜單設置下

後做這兩件事,你會像你在第二個例子中那樣稱呼它:

wp_nav_menu(array(
    'theme_location' => 'utility-menu' 
)); 
+0

完美,謝謝。 – 2014-12-02 23:29:58

相關問題