Trusted WordPress tutorials, when you need them most.
Beginner’s Guide to WordPress
Copa WPB
25 Million+
Websites using our plugins
16+
Years of WordPress experience
3000+
WordPress tutorials
by experts

Como adicionar a primeira e a última classe CSS aos itens de menu do WordPress

Nota editorial: Ganhamos uma comissão de links de parceiros no WPBeginner. As comissões não afetam as opiniões ou avaliações de nossos editores. Saiba mais sobre Processo editorial.

Deseja adicionar um estilo personalizado ao primeiro e ao último itens do menu do WordPress?

Uma opção é simplesmente adicionar uma classe CSS personalizada ao primeiro e ao último itens do menu. No entanto, se você reorganizar o menu em algum momento, esses itens poderão deixar de ser o primeiro e o último.

Neste artigo, mostraremos como adicionar uma classe .first e .last que estilizará o primeiro e o último itens, mesmo se você reordenar o menu posteriormente.

How to Add the First & Last Class to WordPress Navigation Menu Items

Por que estilizar o primeiro e o último itens de navegação de forma diferente?

Às vezes, pode ser necessário adicionar um estilo personalizado ao primeiro e ao último itens de um menu de navegação. Isso pode fazer com que links importantes se destaquem, como o link para o formulário de contato do seu site ou a página do carrinho do WooCommerce.

Nesse caso, você poderia simplesmente adicionar uma classe CSS personalizada ao primeiro e ao último itens do menu. No entanto, se você alterar a ordem do menu em qualquer ponto, isso poderá quebrar completamente o estilo personalizado.

Por esse motivo, recomendamos o uso de filtros.

Neste guia, mostraremos como estilizar o primeiro e o último itens do menu de navegação, para que você possa reorganizar o menu sem quebrar o estilo personalizado. Basta usar os links rápidos abaixo para ir direto ao método que você deseja usar:

Método 1: Adicionar a primeira e a última classe usando um filtro (recomendado)

Observação: Esse método só funciona com um tema clássico do WordPress. Se estiver usando um tema de bloco, vá para o Método 2.

A maneira mais fácil de estilizar os itens do menu de navegação é adicionar um filtro ao tema.

Muitas vezes, você encontrará trechos de código em tutoriais do WordPress com instruções para adicioná-los ao arquivo functions.php do seu tema.

O maior problema é que até mesmo um pequeno erro no snippet de código personalizado pode quebrar seu site do WordPress e torná-lo inacessível. Sem mencionar que, se você atualizar o tema do WordPress, perderá todas as suas personalizações.

É aí que entra o WPCode .

Esse plug-in gratuito facilita a adição de CSS, PHP, HTML e outros elementos personalizados ao WordPress sem colocar seu site em risco.

A primeira coisa que você precisa fazer é instalar e ativar o plug-in gratuito WPCode. Para obter mais detalhes, consulte nosso guia passo a passo sobre como instalar um plug-in do WordPress.

Após a ativação, vá para Code Snippets ” Add Snippet.

Adding a custom code snippet using WPCode

Aqui, basta passar o mouse sobre ‘Add Your Custom Code’.

Quando aparecer, clique em “Usar snippet”.

Adding a custom code snippet to a WordPress website using WPCode

Para começar, digite um título para o snippet de código personalizado. Pode ser qualquer coisa que ajude você a identificar o snippet no painel do WordPress.

Depois disso, abra a lista suspensa “Code Type” (Tipo de código) e selecione “PHP Snippet”.

Adding a custom PHP snippet to WordPress using WPCode

Em seguida, você pode adicionar o seguinte PHP à caixa de código:

function wpb_first_and_last_menu_class($items) {
    $items[1]->classes[] = 'first';
    $items[count($items)]->classes[] = 'last';
    return $items;
}
add_filter('wp_nav_menu_objects', 'wpb_first_and_last_menu_class');

Depois disso, você está pronto para rolar até a parte superior da tela e clicar no botão de alternância “Inactive” (Inativo) para que ele mude para “Active” (Ativo).

Por fim, clique em “Save Snippet” (Salvar snippet) para ativar o snippet PHP.

Adding custom styling to a navigation menu using WPCode

Isso cria classes CSS .first e .last para o primeiro e o último itens do menu. Agora você pode usar essas classes para aplicar um estilo exclusivo a esses itens.

Para fazer isso, você precisará adicionar um segundo snippet ao seu site do WordPress. Para começar, crie um novo snippet de código personalizado seguindo o mesmo processo descrito acima.

Depois disso, digite um título para o snippet de código personalizado.

Em seguida, abra o menu suspenso “Code Type” (Tipo de código), mas, dessa vez, selecione “CSS Snippet”.

Styling the first and last menu items using WPCode

Para este guia, simplesmente colocaremos em negrito o primeiro e o último itens do menu adicionando a seguinte formatação CSS à caixa de código:

.first a {font-weight: bold;}

.last a {font-weight: bold;}

Feito isso, clique no botão de alternância “Inactive” (Inativo) para que ele mude para “Active” (Ativo).

Adding custom styling to a menu using code

Por fim, clique em “Save Snippet” para ativar o snippet de CSS.

Agora, se você visitar seu site, verá o menu atualizado ao vivo.

An example of a WordPress menu, created using WPCode

Método 2: Como estilizar o primeiro e o último itens usando seletores CSS (funciona com todos os temas)

Se não quiser usar um plug-in, você pode estilizar o primeiro e o último itens do menu usando seletores CSS. Entretanto, esse método pode não funcionar com alguns navegadores mais antigos, como o Internet Explorer.

Com isso em mente, é uma boa ideia testar seu site WordPress em diferentes navegadores.

Para seguir esse método, você precisará adicionar código à folha de estilo do seu tema ou à seção “CSS adicional” do personalizador de temas do WordPress.

Se você não tiver feito isso antes, consulte nosso guia sobre como adicionar facilmente CSS personalizado ao seu site WordPress.

A primeira etapa é editar o arquivo style.css do seu tema ou acessar Appearance ” Customize e clicar em “Additional CSS”.

The WordPress Theme Customizer

Depois disso, vá em frente e adicione o seguinte trecho de código ao seu site:

ul#yourmenuid > li:first-child { }
ul#yourmenuid > li:last-child { }

Observe que você precisará substituir “yourmenuid” pelo ID do seu menu de navegação.

Os seletores ‘first-child’ e ‘last-child’ selecionam o primeiro e o último filho de seu pai, que são o primeiro e o último itens do menu de navegação.

Por exemplo, usamos esse código para colocar em negrito o primeiro e o último itens do menu de navegação em nosso blog do WordPress:

ul#primary-menu-list > li:first-child a {
    font-weight: bold;
}
ul#primary-menu-list > li:last-child a {
    font-weight: bold;
}
Using CSS Selectors to Style First and Last Menu Items Differently

Se você usar um tema de bloco do WordPress, o personalizador de tema não estará presente em seu administrador do WordPress. É necessário inserir esta URL no navegador para acessar o Theme Customizer:

https://yourdomainname.com/wp-admin/customize.php

Certifique-se de substituir o domínio pelo nome de domínio de seu site.

Depois disso, abra a guia “Additional CSS” como antes e insira o código a seguir. Observe como o código parece um pouco diferente, pois não é necessário adicionar o ID do menu.

li:first-child a,
li:last-child a {
    background-color: black;
    border: none;
    color: white !important; /* Ensures the color white is prioritized */
    padding: 15px 32px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 16px;
    margin: 4px 2px;
    cursor: pointer;
    border-radius: 12px;
}

Sinta-se à vontade para personalizar o código de acordo com suas necessidades. No exemplo abaixo, transformamos o primeiro e o último links em botões.

Esta é a sua aparência:

Inserting custom CSS in the block theme for first and last navigation link styling

Esperamos que este tutorial tenha ajudado você a aprender como adicionar as classes .first e .last aos menus de navegação do WordPress. Talvez você também queira ver nosso guia sobre como criar uma landing page com o WordPress ou conferir nossa lista dos melhores construtores de páginas do tipo arrastar e soltar.

Se você gostou deste artigo, inscreva-se em nosso canal do YouTube para receber tutoriais em vídeo sobre o WordPress. Você também pode nos encontrar no Twitter e no Facebook.

Divulgação: Nosso conteúdo é apoiado pelo leitor. Isso significa que, se você clicar em alguns de nossos links, poderemos receber uma comissão. Veja como o WPBeginner é financiado, por que isso é importante e como você pode nos apoiar. Aqui está nosso processo editorial.

Avatar

Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi with over 16 years of experience in WordPress, Web Hosting, eCommerce, SEO, and Marketing. Started in 2009, WPBeginner is now the largest free WordPress resource site in the industry and is often referred to as the Wikipedia for WordPress.

O kit de ferramentas definitivo WordPress

Obtenha acesso GRATUITO ao nosso kit de ferramentas - uma coleção de produtos e recursos relacionados ao WordPress que todo profissional deve ter!

Reader Interactions

20 ComentáriosDeixe uma resposta

  1. Syed Balkhi says

    Hey WPBeginner readers,
    Did you know you can win exciting prizes by commenting on WPBeginner?
    Every month, our top blog commenters will win HUGE rewards, including premium WordPress plugin licenses and cash prizes.
    You can get more details about the contest from here.
    Start sharing your thoughts below to stand a chance to win!

  2. Ahmed Mahdi says

    i’ve changed the code slightly to work with child menus too:

    function wpb_first_and_last_menu_class($items) {

    foreach($items as $k => $v){
    $parent[$v->menu_item_parent][] = $v;
    }

    foreach($parent as $k => $v){
    $v[0]->classes[] = ‘first’;
    $v[count($v)-1]->classes[] = ‘last’;
    }

    return $items;

    }

    add_filter(‘wp_nav_menu_objects’, ‘wpb_first_and_last_menu_class’);

  3. Charles says

    Thanks for this nice code…

    What about child menu first and last item?
    It applied only for parent manu.

    Do you have any idea about child last item?

  4. jordi says

    Anyone have any tip about use add_filter(”); for wp_nav_menu using STARKERS?
    can’t make it works :( JS and CSS are fine to do that, it is just frustrating to don’t be able to fix it from the back…
    thanks to share anyway!!

  5. Olivier says

    Together with some other additions to functions.php that i’ve tried, this code fails to tag a menu item as first or last menu item when they are in a submenu. A fix for this would be great!

  6. karen says

    Thanks for this! Forgive me if I missed it – but – is there an example of the menu to see the difference in the nav created by this class? Thank you again!

    • Editorial Staff says

      The site we designed for our client is not live yet. But the main reason was that we wanted to have a border left to the first menu item. All other items had border right element with a specific padding and margin. We used the last class to remove the margin right and the border right because there was no need for it. It was hitting the wrap container. Hope you can visualize it.

      Administrador

Deixe uma resposta

Obrigado por deixar um comentário. Lembre-se de que todos os comentários são moderados de acordo com nossos política de comentários, e seu endereço de e-mail NÃO será publicado. NÃO use palavras-chave no campo do nome. Vamos ter uma conversa pessoal e significativa.