我想删除sub-menu
ul和.menu-item-has-children
当菜单深度优于或等于2时初始化。
所以,我只想要一个最多有3个子菜单的菜单。其他子项仍将显示在菜单中,但不会显示在子菜单中。
使用wp\\U nav\\U菜单(“深度”=>3),它不会附加所有项目。所以,我想我需要使用一个定制的walker导航。
我不知道该怎么做start_lvl
. 如何计算深度并删除ul和类。。。
我的目标是更改此菜单:
菜单项具有子菜单项1菜单项2菜单项具有子菜单项3菜单项4菜单项具有子菜单项5菜单项6:
菜单项有子菜单项1菜单项2菜单项有子菜单项3菜单项4菜单项有子菜单项5菜单项6以及wordpress
菜单项有子菜单项1菜单项2菜单项有子菜单项3菜单项4菜单项有子菜单项我试过:
function start_lvl(&$output, $depth) {
if($depth >= 2) {
$output .= \'\';
} else {
$output .= "<ul class=\'sub-menu\'>";
}
}
它几乎可以工作,但它在我的导航菜单中产生了ul问题。
最合适的回答,由SO网友:s_ha_dum 整理而成
乍一看,在不进行任何测试的情况下,您得到的代码应该可以正常工作,但我预计您会有一些错误</ul>
在标记中。您需要为end_lvl
方法
function end_lvl(&$output, $depth) {
if($depth >= 2) {
$output .= \'\';
} else {
$output .= "</ul>";
}
}
我不知道你的超大菜单是否有问题。