カスタムメニューに登録があるかどうかを判定するために
「has_nav_menu」で条件分岐を行おうとしたのですが
登録があるにも関わらず全てelseになってしまいます。
codexを見直し、綴りにミスがないかも確認しましたが
なぜ判定できないのかが分かりませんでした。
初歩的な見落としかもしれませんが、ご指摘いただけると助かります。
functions.phpへの記述内容
add_action('init', 'custom_menu'); function custom_menu() { $args = array( 'header_menu' => __('グローバルナビ'), 'sidebar_left' => __('サイドナビ(左)'), 'sidebar_right' => __('サイドナビ(右)'), ); register_nav_menus($args); }
テンプレートへの記述内容
if ( has_nav_menu( 'sidebar_left' ) ) { echo 'OK'; } else { echo 'NO'; }
ロケーション名を変更したり、管理画面からナビメニューを再登録しても結果は同じでした。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。