Где создаются пользовательские меню?


Я создал простое меню в wp-admin>внешний вид>меню под названием main-nav. Работает нормально.

Тем не менее, я хотел бы добавить пользовательский элемент в конец меню... окно поиска, подобное окну поиска в apple.com строка меню. Я не могу понять, где меню создаются в коде. где я могу это добавить... есть какие-нибудь идеи?

(Я использую тему starkers)

РЕДАКТИРОВАТЬ

Спасибо тнорткатту и хакре за то, что указали мне правильное направление. То решение состояло в том, чтобы поместить этот код вместе с другими материалами "add_filter" в моей теме functions.php

add_filter('wp_nav_menu_items','search_box_function');
function search_box_function ($nav){
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>";
}

ОБНОВЛЕНИЕ

Решение @tnorthcutt отлично подходит для случаев, когда у вас на экране только одно меню, но если вы добавите второе меню, оно также добавит поле поиска в это меню. Как бы вы выбрали только одно меню? я зарегистрировал свое меню следующим образом:

register_nav_menus( array(
  'primary' => __( 'Primary Navigation', 'twentyten' ),
  'secondary'=>__('Secondary Menu', 'twentyten' ),

 ) );

..и вторичный отображается следующим образом:

wp_nav_menu( array( 'container_class' => 'menu-header', 'theme_location' => 'secondary' ) ); 
Author: cannyboy, 2010-09-07

1 answers

Попробуйте это:

add_filter('wp_nav_menu_items','search_box_function');
function search_box_function {
search box code goes here
}

Для справки ознакомьтесь с отличным учебным пособием Билла Эриксона по выполнению этого с помощью структуры Genesis.

 1
Author: Travis Northcutt, 2010-09-07 19:09:46