[英]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容器等...)
Should you find your happiness here 你应该在这里找到幸福吗
Name menu screen ('menu' => 'navigation') 名称菜单屏幕(“菜单” =>“导航”)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.