如何使用”wp_get_nav_menu_items”在WordPress中显示3级层次菜单()
我正在尝试使用wp_get_nav_menu_items函数在WordPress中显示3级层次菜单, 但是以某种方式未显示结构。
这是我包含在头文件中的代码, 但是结构不正确。
$menu_name = 'primary-menu';
$locations = get_nav_menu_locations();
$menu = wp_get_nav_menu_object($locations[$menu_name]);
$menuitems = wp_get_nav_menu_items($menu->
term_id, array('order' =>
'DESC'));
$ParentArray = array();
foreach ($menuitems as $item) {
// if (!empty($item->
menu_item_parent) &
&
!in_array($item->
menu_item_parent, $ParentArray)) {
array_push($ParentArray, $item->
ID);
// }
}
?>
<
nav>
<
ul class="main-nav">
<
?php
$count = 0;
$submenu = false;
foreach ($menuitems as $item):
$link = $item->
url;
$title = $item->
title;
// item does not have a parent so menu_item_parent equals 0 (false)
if (!$item->
menu_item_parent):
// save this id for later comparison with sub-menu items
$parent_id = $item->
ID;
?>
<
li class="item">
<
a href="http://www.srcmini.com/<
?php echo $link;
?>" class="title">
<
?php echo $title;
?>
<
/a>
<
?php endif;
?>
<
?php if (in_array($item->
menu_item_parent, $ParentArray)): ?>
<
?php if (!$submenu): $submenu = true;
?>
<
ul class="sub-menu">
<
?php endif;
?>
<
li class="item">
<
a href="http://www.srcmini.com/<
?php echo $link;
?>" class="title">
<
?php echo $title;
?>
<
/a>
<
/li>
<
?php if (!isset($menuitems[$count + 1]) || $menuitems[$count + 1]->
menu_item_parent != $parent_id &
&
$submenu): ?>
<
/ul>
<
?php
$submenu = false;
endif;
?>
<
?php endif;
?>
<
?php if (!isset($menuitems[$count + 1]) || $menuitems[$count + 1]->
menu_item_parent != $parent_id): ?>
<
/li>
<
?php
$submenu = false;
?>
<
?php
$count++;
endforeach;
?>
<
/ul>
<
/nav>
#1【如何使用” wp_get_nav_menu_items” 在WordPress中显示3级层次菜单()】在上面的代码中进行更改后, 这件事对我有用。
$menu_name = 'primary-menu';
$locations = get_nav_menu_locations();
$menu = wp_get_nav_menu_object($locations[$menu_name]);
$menuitems = wp_get_nav_menu_items($menu->
term_id, array('order' =>
'DESC'));
$ParentArray = array();
foreach ($menuitems as $item) {
// if (!empty($item->
menu_item_parent) &
&
!in_array($item->
menu_item_parent, $ParentArray)) {
array_push($ParentArray, $item->
ID);
// }
}?>
<
nav>
<
ul class="main-nav">
<
?php
$count = 0;
$submenu = false;
foreach ($menuitems as $item):
$link = $item->
url;
$title = $item->
title;
// item does not have a parent so menu_item_parent equals 0 (false)
if (!$item->
menu_item_parent):
// save this id for later comparison with sub-menu items
$parent_id = $item->
ID;
?>
<
li class="item">
<
a href="http://www.srcmini.com/<
?php echo $link;
?>" class="title">
<
?php echo $title;
?>
<
/a>
<
?php endif;
?>
<
?php if (in_array($item->
menu_item_parent, $ParentArray)): ?>
<
?php if (!$submenu): $submenu = true;
?>
<
ul class="sub-menu">
<
?php endif;
?>
<
li class="item">
<
a href="http://www.srcmini.com/<
?php echo $link;
?>" class="title">
<
?php echo $title;
?>
<
/a>
<
/li>
<
?php if (!isset($item[$count + 1]) || $item[$count + 1]->
menu_item_parent != $parent_id &
&
$submenu): ?>
<
/ul>
<
?php
$submenu = false;
endif;
?>
<
?php endif;
?>
<
?php if (!isset($menuitems[$count + 1]) || $menuitems[$count + 1]->
menu_item_parent != $parent_id): ?>
<
/li>
<
?php
$submenu = false;
?>
<
?php
$count++;
endforeach;
?>
<
/ul>
<
/nav>
推荐阅读
- 如何在WordPress中显示5条随机帖子(我的循环无法正常工作吗?)
- 如何在WordPress上禁用主题更新以避免丢失我的更改()
- 如何使子主题样式出队()
- 如何部署WordPress主题
- 如何删除WordPress页面中的上次更新日期()
- 如果站点使用Divi,如何创建模板()
- 如何使用CSS降低WordPress中的页脚高度()
- 如何自定义WordPress主题,包括小部件()
- 如何在上线之前自定义WordPress主题