嘿,大家好,
我正在编写一个自动函数,从函数中生成菜单。它对数组中的每个项目调用wp\\u nav\\u菜单,因为我希望它是动态的。问题是,无论我如何设置,如果菜单不存在,wp\\u nav\\u menu会生成一个菜单,例如“默认”。这是我的代码(项只是一组字符串):
for($i=0;$i<count($items);$i++) {
$themenu=$items[$i];
$mymenu = wp_nav_menu(array(
\'menu\' => $themenu,
\'menu_class\' => \'mymenu\',
\'container\' => \'false\',
\'fallback_cb\' => \'false\',
\'echo\' => false
)
);
echo $themenu;
}
我知道它部分工作,因为如果$themenu存在,它会显示正确的一个。但如果没有,它只会显示任何菜单!不仅令人讨厌,而且还积极破坏用户体验。
SO网友:Chip Bennett
尝试将您的回声包裹在has_nav_menu()
有条件的:
for($i=0;$i<size($items);$i++) {
$themenu=$items[$i];
$mymenu = wp_nav_menu(array(
\'menu\' => $themenu,
\'menu_class\' => \'mymenu\',
\'container\' => \'false\',
\'fallback_cb\' => \'false\',
\'echo\' => false
)
);
if ( has_nav_menu( $themenu ) ) echo $themenu;
}
(如果我正确地遵循了您的代码…)