Rimuovere lo stile “attivato” nei link del menu che puntano a un’ancora
WordPress ha funzioni che aggiungono automaticamente alcune classi CSS agli elementi html. Nel caso del menu, WordPress aggiunge le classi “current-menu-item” e “current_page_item” alle voci che corrispondono alla pagina che si sta guardando. In una situazione normale questo è un effetto corretto, i temi eviednziano le voci per orientare l’utente. Se però i link del menu sono ancore nella stessa pagina allora avremo multipli elementi evidenziati, l’effetto non va più bene. Con il filtro seguente è possibile rimuovere i due stili dalle voci che contengono “#” nel link.
// if menu item has # then remove 'current-menu-item' and 'current_page_item' classes
add_filter('nav_menu_css_class', 'rem_current_class_for_hash', 10, 2);
function rem_current_class_for_hash($classes, $item){
$url = $item->url;
if (strpos($url, '#') !== FALSE) {
$classes = array_diff($classes, array('current-menu-item', 'current_page_item'));
}
return $classes;
}

Comments (0)