简体   繁体   English

添加一个div并使用wordpress walker更改类或导航菜单?

[英]Add a div and change the classes or navigation menu using wordpress walker?

I want to know how to make a WordPress wp_nav_menu() or wp_list_pages() Walker class that will generate nav menu output like this? 我想知道如何制作WordPress wp_nav_menu()或wp_list_pages()Walker类,该类将生成导航菜单输出,如下所示?

<!-- Level1 -->
    <li class="current">
            <a href="#">Name</a>
<!--Level2-->
            <div class="nav-sub">
                    <ul>
                            <li><a href="#">Name</a></li>
                            <li>
                                    <a href="#">Name</a>
<!--Level3-->
                                    <div class="nav-sub">
                                            <ul>
                                                    <li>
                                                            <a href="#">Name</a>
<!--Can Add Unlimited levels If Possible-->
                                                    </li>
                                                    <li><a href="#">Name</a>
                                            </li>
                                            </ul>
                                    </div>
                            </li>
                            <li><a href="#">Name</a></li>
                            <li><a href="#">Name</a></li>
                    </ul>
            </div>
    </li>

    <!-- This is One Level only -->
    <li>
            <a href="#">Name</a>
    </li>

I tried many ways but can't just figure it out. 我尝试了很多方法,但不能仅仅弄清楚。 Here is the current output using wp_list_pages() 这是使用wp_list_pages()的当前输出

<ul class="myclass">
<li id="home"><a href="/index.php">Home</a></li>
<li class="page_item page-item-2 page_item_has_children"><a href="http://localhost/wordpress/sample-page/">Sample Page</a>
<ul class="children">
<li class="page_item page-item-9"><a href="http://localhost/wordpress/sample-page/home/">Home</a></li>
</ul>
</li>
<li class="page_item page-item-19"><a href="http://localhost/wordpress/page-no-sub/">page no sub</a></li>
</ul>

Thanks in advance! 提前致谢!

PS: I have already read this article here http://codex.wordpress.org/Function_Reference/wp_nav_menu But can't figure out :( PS:我已经在这里阅读了这篇文章http://codex.wordpress.org/Function_Reference/wp_nav_menu但无法弄清楚:(

Edit : 编辑:

Well, look the differents parameters and call your menu 好吧,查看一下参数差异并调用菜单

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

wp_nav_menu( 


    array( 
        'menu' => 'navigation',//(i created this menu on the backend of wordpress)
        'container'       => 'div',
        'container_class' => 'menu-sidebar', 
        'menu_class'      => 'menu-class',
        'menu_id'         => 'menu-id',
        'theme_location' => 'primary', 
        'walker' => new Child_Wrap() 

    ) 



 ); ?>

You can specified many parameters (id menu, class and id container etc...) 您可以指定许多参数(ID菜单,类和ID容器等...)

source class walker 源类沃克

Should you find your happiness here 你应该在这里找到幸福吗

Name menu screen ('menu' => 'navigation') 名称菜单屏幕(“菜单” =>“导航”)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 我们可以通过覆盖 The Walker_Nav_menu 使用 PHP 更改 wordpress 自定义 walker 类的第一个(根)ul 标签吗 - Can we change wordpress custom walker class first (root) ul tag using PHP by overriding The Walker_Nav_menu 如何在Wordpress Walker菜单中更改子菜单锚点的输出? - How to change output of submenu anchors in Wordpress walker menu? Wordpress Walker —如何在类别菜单项中添加帖子数? - Wordpress Walker — how to add number of post to category menu items? Wordpress Nav Walker - 多级导航 - Wordpress Nav Walker - Multilevel navigation 使用 WordPress walker (Walker_Nav_Menu) 时出错,在子菜单中插入 Anchor 父类 - Error when using WordPress walker (Walker_Nav_Menu), class inserting Anchor parent in submenu 使用WordPress中的自定义沃克类反转菜单项和锚定标签 - Reverse menu items and anchor tags using a custom walker class in WordPress Walker Nav菜单更改(带div) - Walker Nav Menu alteration (with div) 如何删除 <div class=“menu”> 来自wordpress的Walker_Nav_Menu - How to remove <div class=“menu”> from Walker_Nav_Menu of wordpress 如何根据自定义高级菜单选项向 Wordpress 导航菜单项添加类 - How to add classes to Wordpress navigation menu items based on custom advanced menu options WordPress:将HTML添加到导航菜单 - WordPress: Add HTML to navigation menu
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM