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.
Besoin d’un spécialiste WordPress pour votre projet ? Contactez-moi
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;
}
