WordPressのwp_nav_menuで出力されるメニューからliを消してリンクのみにするではliを削除してaリンクのみにする処理をご案内しました。
今回はカスタムウォーカー機能を利用して、wp_nav_menuメニューに区切り文字を設定する方法をご案内します。
functions.phpに下記のカスタムウォーカーの設定を追加します。
class border_link_list extends Walker { public function walk( $elements, $max_depth ) { $list = array (); foreach ( $elements as $item ) $list[] = "<a href='$item->url'>$item->title</a>"; return join( '|', $list ); } }
出力したい場所には下記を記述します。
border_link_list
という部分は自由に変更してください。
<?php $menuParameters = array( 'container' => false, 'echo' => false, 'menu' => 'footer_menu', 'items_wrap' => '%3$s', 'depth' => 0, 'walker' => new border_link_list, //設定した名前と同じ名前を呼び出します。 'after' => '' ); echo strip_tags(wp_nav_menu( $menuParameters ), '<a>' ); ?>
こうすることで以下の記述が実現できます。
メニュー1 | メニュー2 | メニュー3 | メニュー4