2011-07-28 9 views
0

私はWordPressのテーマにカスタムメニューを含めていますが、メニュー項目を表示したいのですが、カスタムメニューに項目が追加されていない場合は、ハードコードされたリスト項目があるので何も表示しません同様..ここWordpressでカスタムメニューを使用するにはどうすればいいですか?

は、私はカスタムメニューが空である場合には、しかし>ハードコードされた< ulの内部だけのリスト項目としてカスタムメニューを表示するように動作します

<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> 

を使用しているコードですメインナビゲーションリスト項目の表示に戻ります。

どうすればいいですか?カスタムメニューが空の場合はハードコーディングされた「Back to Site」だけを表示しますか?

何か助けていただければ幸いです。

おかげで、 トーマス

UPDATE:これを見つけました。簡単な修正私はちょうどのオプションに'fallback_cb' => falseを追加するために必要なコーデックス

<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> 

で見落とさ。

+0

あなたが解決した場合は、回答として投稿してください。 – Sparkup

答えて

2

の内容を確認することができます

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

をエコーするのではなく、コードを返しますfalseに設定オプションに 'fallback_cb' => falseを追加します。

1

を渡すと、パラメータとして「反響」と機能wp_nav_menuはそうあなただけの必要な$メニュー

+0

チェックするにはどうすればよいでしょうか?メインメニューアイテムがあるかどうかを解析して調べる必要がある文字列を返しますか? – tsdexter

+0

これはWPがメニューにフィルタを適用することによります... また、次のようにすることもできます: http://core.trac.wordpress.org/browser/tags/3.2.1/wp-includes/nav- menu-template.php – DATF

+0

簡単な解決策を見つけました。私の編集を参照してください。 – tsdexter

関連する問題