在wordpress中添加菜单项

时间:2012-02-25 00:14:25

标签: wordpress menu menuitem

我正在使用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>';
}

1 个答案:

答案 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>';
    }
}