在我的主题中,有一个导航菜单功能
function ct_nav() {
<nav>
<?php wp_nav_menu( array( 'container_id' => 'nav', 'theme_location' => 'primary') ); ?>
</nav>
}
我怎样才能手动添加更多项目?单独使用此功能。
答案 0 :(得分:21)
这是一个更改items_wrap的示例。
wp_nav_menu( array( 'items_wrap' => '<ul id="%1$s" class="%2$s"><li><a href="http://www.google.com">go to google</a></li>%3$s</ul>' ) );
刚刚使用默认值并添加了href。
答案 1 :(得分:16)
function add_last_nav_item($items) {
return $items .= '<li><a href="#myModal" role="button" data-toggle="modal">Contact</a></li>';
}
add_filter('wp_nav_menu_items','add_last_nav_item');
答案 2 :(得分:3)
只是有人需要这个:
可以通过应用过滤器手动添加菜单项:
wp_nav_menu_items
- 适用于所有菜单wp_nav_menu_{$menu->slug}_items
- 用于特定slug的菜单此外,通过更改items_wrap
,例如删除<ul>
并在主题中明确添加 - 这样您就可以添加自己的项目了。
答案 3 :(得分:1)
上述答案都不适合我。这是我使用的jquery类型的变通方法。我需要在菜单的末尾添加一个图像。
按照常规使用wp_nav_menu(),请务必在menu_class中指定一个类,或者指定一个ID。
$items = array(
'theme_location' => 'header-menu',
'menu' => '',
'container' => 'div',
'container_class' => 'menu-{menu slug}-container',
'container_id' => '',
'menu_class' => 'menuContainer', /* important, since we're targetting it with jquery*/
'menu_id' => '',
'echo' => true,
'fallback_cb' => 'wp_page_menu',
'before' => '',
'after' => '',
'link_before' => '',
'link_after' => '',
'depth' => 0,
'walker' => ''
);
wp_nav_menu($items);
$( document ).ready(function() {
$(".menuContainer ul").append("<li><img src='<?php echo get_template_directory_uri(); ?>/img/menuImage.png'></li>");
});