2013-06-27 51 views
2

我使用外觀菜單在wordpress上創建了幾個自定義菜單。wp_nav_menu不在wordpress上的類別頁面上工作

我想根據我正在查看的頁面顯示正確的菜單。我在header.php文件中編寫了下面的腳本,似乎工作正常。它根據我訪問的頁面拉動正確的菜單,但分類頁面除外。

當我在一個分類頁面上,wp_nav_menu函數回退到回退函數,表明該菜​​單不存在?!

我四處尋找,不斷出現的解決方案是添加下面的代碼,但它似乎並沒有工作。

<?php 
    wp_nav_menu('container_class=menu-header&theme_location=primary'); 
?> 

以下是完整的代碼,我加入到header.php文件:

<?php 
switch($master_page) { 
    case 'about': 
     wp_nav_menu(array(
      'menu' => 'about', 
      'fallback_cb' => 'get_cat', 
     )); 
    break; 
    case 'offer': 
     wp_nav_menu(array(
      'menu' => 'offer', 
      'fallback_cb' => 'get_cat', 
     )); 
    break; 
} 
?> 

我真的在這一點上受挫。有任何想法嗎?

回答

0

我看不到你在哪裏給$master_page賦值,所以在這一點上它只是一個空變量。

您需要查看WordPress的is_page()is_category()函數,並使用if語句而不是switch

<?php 
if(is_page('about')) { 
    wp_nav_menu(array(
     'menu' => 'about', 
     'fallback_cb' => 'get_cat', 
    )); 
} else { 
    ... 
} 
?> 
相關問題