ウエブプレインズ

ウェブサイト制作・パソコンの授業承ります。

備忘録

カスタムウォーカークラスで、階層メニューにクラスを付ける。

カスタムメニューが出力するulタグに対して
任意のidやclassを付けるにはwp_nav_menuのarray内へ
classならmenu_class、idならmenu_idに任意の名前を入れるだけでOKです。

ですが、その下の階層メニューのulに対して任意のidやclassを付けるには、カスタムウォーカーを使います。

カスタムメニューは特に何もしなければ階層メニューのulに対して自動でsub-menuというclassを付けます。

カスタムウォーカークラスで、階層メニューのulに対して任意の文字を与えます。

カスタムウォーカーの設定(fanctions.php)

class My_Walker_Nav_Menu extends Walker_Nav_Menu {
  function start_lvl(&$output, $depth) {
    $indent = str_repeat("\t", $depth);
    $output .= "\n$indent<ul class=\"my-sub-menu\">\n";
  }
}

wp_nav_menuのarrayに追加

'walker' => new My_Walker_Nav_Menu()

参考URL

https://stackoverflow.com/questions/5034826/wp-nav-menu-change-sub-menu-class-name

Tagged

Posted by on .

Comments

0 comments so far.

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください