0

ワードプレスのメニューレベルのクラスに問題があります。

<?php wp_nav_menu( array( 'theme_location' => 'primary' ) ); ?>

これは、メニューを生成するために使用したコードです。

第1レベルのメニューIDは

ul id = "menu-home"

第2レベルのクラスは

ul class = "sub-menu"

しかし、私の第3レベルのメニューも第2レベルと同じクラスです

ul class = "sub-menu"

第3レベルのクラスまたは他の解決策を変更する方法はありますか?

助けてください..ありがとう

4

3 に答える 3

1

メニューをどのように作成しているかはわかりませんが、http: //codex.wordpress.org/Function_Reference/wp_nav_menuによると、パラメーター(menu_class)を渡して、メニューのクラスまたはコンテナークラスを設定できます。

<?php 
    $options = array(
    'theme_location'  => 'primary',
    'menu_class'      => 'sub-menu', 
    'items_wrap'      => '<ul id="%1$s" class="%2$s">%3$s</ul>',
); ?>

または、 CSSまたはjQueryセレクターを適用する場合は、次のようにします。

ul#menu-home ul.sub-menu ul.sub-menu

そして、第3レベルのメニューにアクセスできるようになります。

于 2012-08-07T14:10:14.757 に答える
0

私はここから正しい答えを得ました 元のリンク

Amitプロファイルに感謝します

これがコードです

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

利用方法:

wp_nav_menu( array('walker' => new wpse61220_submenu_class() ) );
于 2012-08-08T18:18:57.353 に答える
0

作業が小さすぎる場合は、このトリックを使用できます。

外観からメニューページを開き、トップナビゲーターから「画面オプション」を選択します。

ここで「CSSクラス」を選択します。

メニュー項目を確認してください。新しいオプションフィールド=>"cssclasses(optional)"nameがあります

それでおしまい。;)。幸運を祈っています。

于 2014-01-30T23:28:17.263 に答える