在我的主題還有用於導航菜單Wordpress。手動添加菜單項wp_nav_menu
function ct_nav() {
<nav>
<?php wp_nav_menu(array('container_id' => 'nav', 'theme_location' => 'primary')); ?>
</nav>
}
功能我如何可以手動添加更多的項目?單獨使用此功能。
在我的主題還有用於導航菜單Wordpress。手動添加菜單項wp_nav_menu
function ct_nav() {
<nav>
<?php wp_nav_menu(array('container_id' => 'nav', 'theme_location' => 'primary')); ?>
</nav>
}
功能我如何可以手動添加更多的項目?單獨使用此功能。
只是爲了以防萬一有人需要這樣的:
菜單項可以手動通過應用過濾器可以添加:
wp_nav_menu_items
- 所有菜單wp_nav_menu_{$menu->slug}_items
- 菜單特別蛞蝓還通過更改items_wrap
,例如,通過刪除<ul>
並明確將其添加到主題 - 這樣你就可以添加自己的項目。
這需要一個菜單已經分配給menu_location。有沒有辦法做到這一點,沒有分配菜單(在外觀>菜單)。這對我正在做的多點工作很有幫助。 – raison
這裏是一個通過改變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。
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');
這絕對是最好的解決方案。 –
謝謝@JasonGlisson –
以上答案都不適用於我。這是我使用的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>");
});
爲什麼不在函數調用後自己添加標記? –
是的,我不明白你的意思,你可以在上面的標記中手動添加項目?你想要添加什麼? – csilk