Skip to content

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)

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Torna su