it-swarm-es.com

¿Dónde se construyen los menús personalizados?

He creado un menú simple en wp-admin> apariencia> menús llamado main-nav. Funciona bien.

Sin embargo, me gustaría agregar un elemento personalizado al final del menú ... un cuadro de búsqueda como el cuadro de búsqueda en la barra de menú de Apple.com. No puedo averiguar dónde se construyen los menús en código. ¿Dónde puedo agregar esto ... alguna idea?

(Estoy usando el tema starkers)

EDITAR

Gracias a tnorthcutt y hakre por indicarme la dirección correcta. La solución fue poner este código en el resto de "add_filter" en las funciones de mi tema.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>";
}

ACTUALIZACIÓN

La solución de @ tnorthcutt es excelente para cuando tiene solo un menú en su pantalla, pero si agrega el segundo menú, también se agrega el cuadro de búsqueda a ese menú. ¿Cómo te dirigirías a un solo menú? He registrado mi menú es así:

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

 ) );

..y el secundario se muestra así:

wp_nav_menu( array( 'container_class' => 'menu-header', 'theme_location' => 'secondary' ) ); 
2
cannyboy

Prueba esto:

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

Para referencia, consulte el excelente tutorial de Bill Erickson's sobre cómo lograr esto con el marco de Genesis.

1
Travis Northcutt