WordPressのwp_nav_menuタグのカスタマイズ
板橋区でWordPress構築をがんばっている、スタジオカッツェの竹上です。
WordPressには、外観>メニューからメニューの変更をできるようにするwp_nav_menu()というテンプレートタグがあります。
グローバルナビゲーションやフッターで使う事が多いと思いますが、そのまま使うと、ulやliタグしか使えなかったり、少々不便な所があります。
ある案件で、dt・ddで出力したかった時のカスタマイズ方法をご紹介します。
//$test_menuでメニューの内容を受け取る
$test_menu = wp_nav_menu(
array(
'menu' => 'G-nav', //該当するメニュー名を入れます。
'items_wrap' => '%3$s',//メニュー項目をかこむタグを除外したい場合は%3$sを記述します。
'container' => false ,//コンテナをなしにする場合は、falseを明記する必要があります
'echo' => false,//メニューをPHPの値で返すfalseにします
)
);
//str_replaceでliの閉じタグをddに変更する
$test_menu = str_replace("li>", "dd>", "$test_menu");
//str_replaceでliの開始タグをddに変更する
$test_menu = str_replace("<li", "<dd", "$test_menu");
//echo で変更したメニューのhtmlを出力する
echo $test_menu;
以上の記述で、ulで囲まず、liではなく任意のタグで出力することができます。
メニューをli以外で出力したい事はあまりないかもしれませんが、ご参考まで。
WordPressでお困りですか?
WordPressのテーマ構築、カスタマイズなど、スタジオカッツェにご相談ください。
個人事業主様、Web制作会社様からのご相談をお待ちしております。