Suporte » Desenvolvendo com WordPress » Inserir classe Active no menu

  • Resolvido sdcom

    (@sdcom)


    Olá,

    Preciso inserir a classe ACTIVE (ficar sublinhado) no menu do site. Já fiz vários testes que fui encontrando nos fóruns, e até agora nada. Não sei qual é o problema. Vejamos o que fiz:

    Link do menu normal:

    <li id="menu-item-258" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-258"><a href="http://localhost/001/lojas/">LOJAS</a></li>

    Link do menu ativo:

    <li id="menu-item-258" class="menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-93 current_page_item menu-item-258 active "><a href="http://localhost/001/lojas/" aria-current="page">LOJAS</a></li>

    Function.php:

    function special_nav_class ($classes, $item) {
      if (in_array('current_page_item', $classes) ){
        $classes[] = 'active ';
      }
      return $classes;
    }
    
    add_filter('nav_menu_css_class' , 'special_nav_class' , 10 , 2);

    Alguém poderia ajudar?

    Obrigado

    • Este tópico foi modificado 3 semanas, 2 dias atrás por sdcom.
Visualizando 3 respostas - 1 até 3 (de um total de 3)
  • Por padrão as classes ‘current-menu-item’ e ‘current_page_item’ já são suportadas e exibidas nas li’s do menu.

    Não é necessário um recurso extra para adiciona-las.

    O que é necessário é estilizar no css:

    .nav-header > .current-menu-item > a { color: orange; }

    No exemplo acima ‘.nav-header’ é a ul, altere para a classe do seu menu.


    Dica extra:
    Provável você não utilizar essas outras classes que WordPress insere na li, com o plugin Purify WordPress é possivel escolher quais classes vão aparecer nas li’s… deixando limpo.

    @theandersonn,

    No meu caso ficou:

    #menu-header > .current-menu-item > a { 
      text-decoration: underline;
    }

    Obrigado

    Por nada, disponha 🙂

Visualizando 3 respostas - 1 até 3 (de um total de 3)
  • Você deve estar conectado para responder a este tópico.