0

<li></li>WordPress メニューの に2 つのスパンを追加する必要があります。1 つは要素のページ タイトルを含み、もう 1 つは説明を含みます。li に 1 つのスパンを追加する方法はわかりましたが、2 つ作成する方法はわかりませんでした。何か助けはありますか?

基本的なマークアップ:

    <ul class="dropdown-menu pull-left">
        <li>
            <a href="">
                <span class="dropdown-menu-pagetitle">Test Title</span>
                <span class="dropdown-menu-pagedescr">Lorem ipsum dolor sit amet, consecteteur adipiscing</span>
            </a>
        </li>
[.......]

編集:

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

    function end_el(&$output, $item, $depth = 0, $args = array())
    {
        $output .= $item->label . '<span class="dropdown-menu-pagedescr">' . $item->description . '</span>';
    } 
}

私の現在のナビ:

        <?php 

$menu_args = array(
    'container'       => false, 
    'menu_class'      => 'nav nav-pills pull-right', 
    'menu_id'         => 'Navigation',
    'link_before'     => '<span class="dropdown-menu-pagetitle">',
    'link_after'      => '</span>',
    'walker' => new My_Walker_Nav_Menu()
    );

wp_nav_menu($menu_args ); 

?>
4

1 に答える 1

1

これを実現するには、カスタム Walker を使用する必要があります。これは基本的に、Wordpress でメニューの作成方法の指示として使用されるクラスです。

ウォーカーの作成方法に関するドキュメントはたくさんありますが、使用方法を学ぶには練習が最善の方法だと思います。

start_el()サブメニュー項目の前に説明が追加されるように、関数を使用することをお勧めします。次の記事は、開始するのに役立ちます。

アップデート:

誰かが Wordpress Stack Exchange サイトで非常によく似た質問をしています:

https://wordpress.stackexchange.com/questions/14037/menu-items-description-custom-walker-for-wp-nav-menu/14039#14039

それはおそらく始めるのに最適な場所です!

于 2013-05-30T11:07:14.707 に答える