我正在使用wp_nav_menu(),我想将搜索框添加为菜单的一部分。
我无法搞清楚,并希望得到一些帮助:
我的代码:
<?php
$args = array('theme_location' => 'primary', 'container' => false);
wp_nav_menu( $args );
?>
现在我想添加一个额外的&lt; li&gt;元素到结尾或菜单&lt; ul&gt;以及&lt; li&gt;中我想要的一切是输出:
<?php get_search_form();?>
可以这样做吗?
的functions.php:
add_action('init', 'register_top_menu');
function register_top_menu() {
register_nav_menu('primary', __('Top Menu', 'leeaenergy'));
}
add_filter('wp_nav_menu_items','add_search', 10, 2);
function add_search($items, $args) {
if( $args->theme_location == 'primary' )
return $items . '<li>'.get_search_form().'</li>';
}
答案 0 :(得分:3)
是的,您需要使用过滤器。将以下代码添加到functions.php文件中。将theme_location
更改为为您当前主题设置的内容:
add_filter( 'wp_nav_menu_items', 'add_search', 10, 2 );
function add_search( $items, $args ) {
if ( $args->theme_location == 'primary' ) {
return $items . '<li>' . get_search_form() . '</li>';
}
}