J'ai besoin d'ajouter un champ de recherche à la fin d'un menu dans un élément de la liste.
Je me suis intéressé aux marcheurs, mais je trouve vraiment difficile de savoir quel est le dernier article (ou même le total). Également, où devrais-je ajouter le code pour l'élément personnalisé?.
J'ai actuellement;
class mainNav_walker extends Walker_Nav_Menu
{
public function start_el( &$output, $item, $depth, $args )
{
//print_r($item);
$output .= $this->custom_content( $item );
parent::start_el( &$output, $item, $depth, $args );
}
protected function custom_content( $item )
{
// add <li>SEARCH FIELD HERE?</li>
}
}
Vous n'avez pas besoin d'un déambulateur dans ce cas. Un filtre appelé wp_nav_menu_items
est disponible. Il vous permet d’éditer les éléments de la liste d’un menu. Il suffit d'ajouter votre propre élément de liste avec un champ de recherche.
add_filter( 'wp_nav_menu_items', 'add_search_to_nav', 10, 2 );
function add_search_to_nav( $items, $args )
{
$items .= '<li>SEARCH</li>';
return $items;
}
Remarque: si vous souhaitez uniquement cibler un menu spécifique, un filtre dynamique existe:
wp_nav_menu_{$menu->slug}_items