将搜索框添加到主导航

时间:2016-09-05 11:28:25

标签: wordpress

我在尝试将搜索框放入主导航时遇到了一些问题。

我正在使用Wordpress 4.6,这段代码位于我的函数文件中:

<nav class="container-fluid">
    <div class="row">
            <a *ngFor="let control of controls" (click)="toggleControl(control.name, $event)" role="button" href="#" class=" text-uppercase"> 
                {{control.name}}
            </a>
    </div>
</nav>
<div>
    <this is where i want the sub-component to appear/>
</div>

但是,它不起作用。我有什么想法吗?

提前致谢!

1 个答案:

答案 0 :(得分:1)

使用$args->menu->name代替$args->menu

还要注意'小学'中的大写字母P

因此,一个可行的解决方案看起来像这样

add_filter('wp_nav_menu_items','search_box_function', 10, 2);
function search_box_function( $nav, $args ) {
    if( $args->menu->name == 'Primary' )
            return $nav."<li class='menu-header-search'><form action='http://example.com/' id='searchform' method='get'><input type='text' name='s' id='s' placeholder='Search'></form></li>";

    return $nav;
}

更新 - 注册菜单

add_action( 'after_setup_theme', 'register_my_menu' );
function register_my_menu() {
  register_nav_menu( 'primary', __( 'Primary', 'cik' ) );
}