カスタムメニューに登録があるかどうかを判定するために
「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';
}
ロケーション名を変更したり、管理画面からナビメニューを再登録しても結果は同じでした。
#wordpress