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