2013-10-08 50 views
0

我創造了我的WordPress博客主題,我對結構的代碼,以顯示自定義菜單wp_nav_menu不工作WordPress的

在我的functions.php

我已經寫了:

function register_my_menus(){ 
register_nav_menus(
    array('menu-1' => __('Primary Menu'), 
    ) 
); 
} 

add_action('init', 'register_my_menus'); 

這是我的header.php中

if (has_nav_menu($location)) { 
    wp_nav_menu(array('theme_location' => 'menu-1')); 
} 

的問題是,當我從WordPress的主菜單設置菜單,沒有菜單顯示和菜單也經過內容沒有顯示,請幫我在哪裏,我錯了

+0

register_nav_menus用於多個菜單,使用register_nav_menu –

回答

1

您已經使用has_nav_menu()命令,通過它的外觀,從Codex複製/粘貼,而不給它一個參數。試試這個:

而不是

if (has_nav_menu($location)) { 
    wp_nav_menu(array('theme_location' => 'menu-1')); 
} 

此:

if (has_nav_menu('menu-1')) { 
    wp_nav_menu(array('theme_location' => 'menu-1')); 
} 

然後,只要你曾作過菜單在管理面板的位置,並將其分配到這個位置,它應該盡我所能地工作。

+0

我注意到,這個問題是每一個主題,所以我需要看看解決問題的其他代碼 –

+0

可能愚蠢的問題的道歉,但菜單是空的還是未分配的? –

1

嗨曼迪普·辛格你分配你的菜單,主菜單在WordPress管理潘內爾

+0

謝謝。在我的情況下,這很奇怪,我不得不點擊後端的「添加菜單」按鈕。即使菜單已經定義了,包括菜單項。之後我可以選擇'主要'。現在像「wp_nav_menu」這樣的主題過濾器突然按預期工作。 – Floris