Oi @yankee-wolf,
A chamada à register_nav_menus só serve para registrar menu locations no tema, ou seja, criar aqueles checkboxes abaixo dos itens do menu na tela de edição e criar a possibilidade de colocar no código o menu selecionado pelo usuário através da função wp_nav_menu. É através da wp_nav_menu que você também poderá acrescentar classes na <ul>
.
Para a <li>
você precisará do filtro nav_menu_css_class, como no código abaixo, que adiciona a classe “active” nas <li>
que já possuem determinadas classes:
function special_nav_class($classes, $item) {
if( in_array('current-menu-item', $classes) OR
in_array('current-menu-ancestor', $classes) OR
in_array('current-page-ancestor', $classes) OR
in_array('current_page_parent', $classes)) {
$classes[] = "active";
}
return $classes;
}
add_filter('nav_menu_css_class' , 'special_nav_class' , 10 , 2);
Ah, um ponto de atenção no seu código: o segundo parâmetro do add_action deve ser o nome da função que você declarou, ok? Troque wp_menu
por wp_skeleton_menu
.
Se não tiver mais nenhuma dúvida não esqueça de marcar o tópico como resolvido 🙂
-
Esta resposta foi modificada 8 anos, 3 meses atrás por Felipe Elia. Razão: marcação de código