2011-07-28 38 views
0

我在wordpress主題中包含一個自定義菜單 - 但是我希望它顯示菜單列表項,但是在沒有項目添加到自定義菜單的情況下,我希望它不顯示任何內容,因爲我有一個硬編碼的列表項以及..如何在Wordpress中使用自定義菜單,即使它是空的?

這裏是我使用

<ul> 
    <?php wp_nav_menu(array('menu' => 'Project Nav', 'container' => false, 'items_wrap' => '%3$s')); ?> 
    <li><a href="www.website.com" title="Back to Website">Back to Site</a></li> 
</ul> 

它的工作原理,以顯示自定義菜單作爲硬編碼< UL裏面只有列表項的代碼>但是,如果自定義菜單爲空它恢復顯示主要導航列表項目...

我該如何使用它如果他們在那裏顯示項目,或者如果自定義菜單是空的,則只顯示硬編碼的「返回站點」?

任何幫助表示讚賞。

感謝, 托馬斯

UPDATE:發現了這一點。簡單的解決我在食品

忽視
<ul> 
    <?php $menu = wp_nav_menu(array('menu' => 'Commercial', 'container' => false, 'items_wrap' => '%3$s', 'fallback_cb' => false)); ?> 
    <li><a href="http://www.website.com" title="Back to Website">Back to Main Site</a></li> 
</ul> 

只是需要加入'fallback_cb' => false的選項。

+0

將其作爲答案發布,如果你已經解決了。 – Sparkup

回答

2

$菜單的內容將'fallback_cb'=> false添加到選項。

1

如果傳遞「迴響」作爲參數,並將其設置爲false wp_nav_menu將返回代碼,而不是附和

$menu = wp_nav_menu(array('echo' => false, [...])); 

的功能,使您可以檢查只是需要

+0

什麼是最好的檢查方法?它是否會返回一個我必須解析並查看它是否包含主菜單項的字符串? – tsdexter

+0

這取決於WP將篩選器應用於菜單... 您也可以像他們那樣執行此操作: http://core.trac.wordpress.org/browser/tags/3.2.1/wp-includes/nav- menu-template.php – DATF

+0

找到更簡單的解決方案。查看我的編輯。 – tsdexter

相關問題