Buscador de WordPress en el menú usando código

Hoy me he encontrado con que un amiguete quería meter en su página web un elemento en el menú . Quería meter el buscador de WordPress.

La verdad es que es algo sencillo pero él no sabe nada de programación, como suele ser habitual, él instaló WordPress y un Template y poco a poco se esta pegando con las 4 cosillas que saber tocar.

¿Cómo añadir el elemento del menú sin usar un plugin?

Abrimos nuestro archivo functions.php que estará en el raiz del tema y añadimos las siguientes líneas

add_filter('wp_nav_menu_items','buscador_buscador_menu', 10, 2);
 
function buscador_buscador_menu($items, $args) {
 
$searchform = get_search_form( false );
 
$items .= '<li>' . $searchform . '</li>'';
 
return $items;
 
}

Podéis añadir cualquier enlace o elemento, como por ejemplo el código que os muestro a continuación. Se usó en la web de 1785.es, aunque no llego a estar publicada como woocommerce de WordPress

add_filter('wp_nav_menu_items', 'add_search_to_nav', 10, 2);

function add_search_to_nav($items, $args)
{
global $woocommerce;
$count = $woocommerce->cart->cart_contents_count;


if(is_user_logged_in()){
$items .= '<li><div class="icono"><a href="/mi-cuenta" title="Acceso a cuenta"><i class="fa fa-2 fa-user-o" aria-hidden="true"></i></a></div></li>';
}else{
$items .= '<li><div class="icono"><a href="/mi-cuenta" title="Acceso a tienda"><i class="fa fa-2 fa-user-o" aria-hidden="true"></i></a></div></li>';
}

if($count){
$items .= '<li><div class="icono"><a href="'.wc_get_cart_url().'" title="Carrito"><i class="fa fa-2 fa-shopping-cart" aria-hidden="true"></i></a></div></li>';
}

return $items;
}

Básicamente, mostraba el icono del usuario si estaba logado o sin logar y lo llevaba a dos sitios diferentes. Por otro lado si tenía elementos en el carrito aparecía en el menú, como podéis ver en las líneas finales. Os dejo un enlace a las referencias de WordPress para que veáis otros ejemplos. Referencia

Un saludo a todos y ya sabéis cualquier duda podéis consultarme desde la página de contactar

Buscador de WordPress en el menú usando código Modificado: agosto 19th, 2018 por Carlos González Gurrea
1 estrella2 estrellas3 estrellas4 estrellas5 estrellas (Ninguna valoración todavía)
Cargando...

Centro de preferencias de privacidad

    Almacenamiento y acceso a información

    El almacenamiento de información o el acceso a información ya almacenada en tu dispositivo como identificadores de publicidad, identificadores de dispositivo, cookies y tecnologías similares.

    google.com

    Personalización

    La recopilación y procesado de información sobre tu uso de este servicio para posteriormente personalizar la publicidad y/o el contenido para ti en otros contextos, como otras webs o apps, con el tiempo. Habitualmente el contenido de la web o la app se usa para hacer deducciones sobre lo que te interesa, lo que define la selección futura de publicidad y/o contenido.

    google.com

    Selección de anuncios, entrega, informes

    La recopilación de información y la combinación con información anteriormente recopilada para seleccionar y presentarte publicidad y para medir la entrega y efectividad de esa publicidad. Esto incluye usar información recopilada anteriormente sobre tus intereses para seleccionar anuncios, procesar datos sobre qué anuncios se mostraron, con qué frecuencia se mostraron, cuando y dónde se mostraron y si llevaste a cabo alguna acción relacionada con el anuncio, como por ejemplo hacer clic en un anuncio o hacer una compra. Esto no incluye la personalización, que es la recopilación y procesado de información sobre el uso que haces de este servicio para posteriormente personalizar publicidad y/o otros contenidos para ti en otros contextos, como webs o apps, con el tiempo.

    google.com

    Selecciones de contenido, entrega, informes

    La recopilación de información y combinación con información previamente recopilada para seleccionar y presentarte contenido y para medir la entrega y efectividad de ese contenido. Esto incluye el uso de información recopilada anteriormente sobre tus intereses para seleccionar contenido, procesar datos sobre qué contenido se mostró, con qué frecuencia o durante cuánto tiempo se mostró, dónde y cuándo se mostró y si llevaste a cabo alguna acción relacionada con el contenido, como por ejemplo hacer clic en contenido. Esto no incluye la personalización, que es la recopilación y procesado de información sobre el uso que haces de este servicio para posteriormente personalizar contenido y/o publicidad para ti en otros contextos, como webs o apps, con el tiempo.

    google.com