Como especificar manualmente a página ativa atual com wp_nav_menu ()


9

Existe uma maneira de especificar manualmente qual página está atualmente "ativa" ao usar wp_nav_menu()?

Eu tenho uma página "Produtos" e nessa página tenho links para várias taxonomias personalizadas (dinâmicas). Quando clico em uma dessas taxonomias, permaneço na página "Produtos", mas wp_nav_menu()perco a referência ao fato de ainda estar na página "Produtos". Existe uma maneira de corrigir isso?

Obrigado!

Jon

Respostas:


12

Se você quiser apenas adicionar a current_page_itemclasse a um item de menu, poderá conectar-se ao nav_menu_css_classfiltro e adicionar essa classe, se necessário. É chamado quando o menu é impresso .

Se você deseja acessar o menu inteiro e adicionar classes, conecte-se ao wp_get_nav_menu_itemsfiltro, onde você obtém toda a $itemsmatriz. Você pode editar as classespropriedades de itens individuais.


2

@ Jon Desde que você esteja usando o <body <?php body_class(); ?>>WordPress, a classe será atribuída current_page_itemao seu menu junto com current_page_parentse você estiver usando os menus suspensos.


11
Oi Chris, Obrigado pela resposta. Eu estou usando o <body <? Php body_class (); ? >> mas o problema é que, no que diz respeito ao wp_nav_menu (), as taxonomias nas quais estou clicando não têm relação com isso! Então, eu preciso dizer para wp_nav_menu () - se a página for X, então mostre "Products" como o current_page_parent.
Jon

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.