Blog Web & Design

Fonctions utiles pour vos menus WordPress

Ces fonctions vont vous permettre de retravailler vos menus de navigation WordPress grâce à la modification des filtres prévus à cet effet : wp_nav_menu_items et le filtre nav_menu_link_attributes.

Ajouter le formulaire de recherche au menu de navigation WordPress

add_filter('wp_nav_menu_items', 'wp578_add_search_form_in_nav_menu', 10, 2);
function wp578_add_search_form_in_nav_menu($items, $args) {

	// Si le nom de votre menu est "meu-1" (modifiez par le votre) : 
	if( $args->theme_location == 'menu-1' ){
	        $items .= '<li class="menu-item_search">' . get_search_form() . '</li>';
	        return $items;
	}
}

Ajouter une class à chaque lien d’un menu de navigation WordPress

add_filter( 'nav_menu_link_attributes', 'wp578_add_specific_menu_location_class', 10, 3 );
function wp578_add_specific_menu_location_class( $atts, $item, $args ) {

	// Si le nom de votre menu est "meu-1" (modifiez par le votre) : 
    if( $args->theme_location == 'menu-1' ) {

    	$source 	= $atts['href'];
    	$search 	= get_bloginfo('url');
    	$replace 	= '';

    	// Rechercher Remplacer
    	$category_slug = str_replace($search, $replace, $source);

    	// Sanitization :
      	$atts['class'] = 'menu-item-link_' . sanitize_title($category_slug);
    }
    return $atts;
}
Dernière mise à jour le Auteur : Thomas Dufranne

Ce contenu vous a-t-il été utile ?

Merci pour votre avis !

Si vous pensez pouvoir aider d'autres personnes, pensez à partager le contenu

Merci pour votre avis !

Désolé que vous n'ayez pas trouvé votre réponse.

Je vous invite à me poser vos question par commentaire ou par e-mail !

Repondre

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.