[英]Custom Wordpress menu structure
我是Wordpress的新手,为我的主导航菜单编写了自定义结构,因为我需要能够将列放入子菜单div中。 但是,我的代码无法正常工作:
<div class="menu-menu-1-container">
<ul id="menu-menu-1" class="menu">
<?php
$menuname = wp_get_nav_menu_object("Menu 1" );
$menu_name = $menuname->name;
$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' ) );
$count = 0;
$submenu = false;
foreach( $menuitems as $item ):
// set up title and url
$title = $item->title;
$link = $item->url;
// 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="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children">
<a href="<?php echo $link; ?>"><?php echo $title; ?></a>
<?php
endif;
if ( $parent_id == $item->menu_item_parent ):
if ( !$submenu ): $submenu = true; ?>
<ul class="sub-menu">
<?php endif; ?>
<li class="menu-item menu-item-type-post_type menu-item-object-page">
<a href="<?php echo $link; ?>"><?php echo $title; ?></a>
</li>
<?php if ( $menuitems[ $count + 1 ]->menu_item_parent != $parent_id && $submenu ): ?>
</ul>
<?php
$submenu = false; endif;
endif;
?>
<?php if ( $menuitems[ $count + 1 ]->menu_item_parent != $parent_id ): ?>
</li>
<?php
$submenu = false; endif;
$count++; endforeach;
?>
</ul>
</div>
目前根本没有显示菜单,我检查了拼写菜单名称的正确性和是否做到了。 有人可以看到我在做什么吗?
WordPress有一个简单的菜单查询。
<?php wp_nav_menu( array( 'theme_location' => 'primary', 'menu_id' => 'primary-menu' ) ); ?>
您可以从https://developer.wordpress.org/reference/functions/wp_nav_menu/阅读更多信息。您可以使用CSS和javascript轻松调整此设置。 但是,就像@ akshay-shah状态一样,如果您希望使用bootstrap之类的CSS框架,则可以使用nav walker类。 参考: https : //github.com/wp-bootstrap/wp-bootstrap-navwalker
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.