我正在将非引导菜单转换为wordpress。它没有下拉列表,所以我不认为我需要使用walker类。当我在Google Chrome中检查它时,ul标记类是正确的,li是正确的,但是当我在html菜单上查看a标记时,我可以看到它有一个span标记,例如:
<a href="home">
<span>Home</span>
</a>
但我的wordpress菜单如下所示:
<a href="home">Home</a>
我需要的样式显示在span标记中,但我不确定如何使用当前的菜单代码执行此操作?
<div class="menu_wrapper">
<nav id="menu">
<?php wp_nav_menu(array(
\'menu_class\' => \'menu menu-main\',
\'container\' => \'\',
\'theme_location\' => \'main_menu\'
));
?>
</nav>
</div>
这是原始菜单:
<div class="menu_wrapper">
<nav id="menu">
<ul id="menu-main-menu" class="menu menu-main">
<li class="current-menu-item">
<a href="index.html"><span>Home</span></a>
</li>
<li>
<a href=""><span>item1</span></a>
</li>
<li>
<a href=""><span>item2</span></a>
</li>
<li>
<a href=""><span>item3</span></a>
</li>
</ul>
</nav>
</div>
最合适的回答,由SO网友:Nathan Johnson 整理而成
您将要使用link_before
和link_after
的参数wp_nav_menu
. 将其设置为\'<span>\'
和\'</span>\'
分别地
wp_nav_menu( [
\'menu_class\' => \'menu menu-main\',
\'container\' => \'\',
\'theme_location\' => \'main_menu\',
\'link_before\' => \'<span>\',
\'link_after\' => \'</span>\'
] );