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 criar taxonomias personalizadas no WordPress

Organizar o conteúdo do WordPress é fácil com categorias e tags. Mas, às vezes, elas não são suficientes para organizar tudo da maneira que você deseja. É aí que entram as taxonomias personalizadas.

Com as taxonomias personalizadas, você pode criar suas próprias maneiras de classificar e agrupar conteúdo. Isso lhe dá mais controle e flexibilidade sobre como seus posts, produtos ou qualquer outro conteúdo são categorizados.

Neste guia, vamos orientá-lo sobre como criar taxonomias personalizadas no WordPress, quer você use um plug-in ou prefira fazê-lo manualmente.

How to create custom taxonomies in WordPress

O que é uma taxonomia do WordPress?

Uma taxonomia do WordPress é uma forma de organizar grupos de posts e tipos de posts personalizados.

Por padrão, o WordPress vem com duas taxonomias chamadas categorias e tags. Você pode usá-las para organizar as publicações do seu blog.

No entanto, se você usar um tipo de post personalizado, as categorias e as tags poderão não parecer adequadas para todo o conteúdo.

Por exemplo, você pode criar um tipo de post personalizado chamado “Books” (Livros) e classificá-lo usando uma taxonomia personalizada chamada “Topics” (Tópicos). Em seguida, você pode adicionar termos de tópicos como “Aventura”, “Romance”, “Horror” e outros tópicos de livros que desejar.

Isso permitiria que você e seus leitores classificassem e filtrassem facilmente os livros por tópico.

As taxonomias também podem ser hierárquicas, o que significa que você pode ter tópicos principais ou pais como “Ficção” e “Não ficção”. Em seguida, você teria subtópicos, ou filhos, em cada categoria.

Por exemplo, a categoria principal “Ficção” poderia ter “Aventura”, “Romance” e “Horror” como filhos.

Agora que você já sabe o que é uma taxonomia personalizada, vamos aprender a criar taxonomias personalizadas no WordPress.

Embora a criação de taxonomias personalizadas seja poderosa, há muito a ser abordado. Para ajudá-lo a configurar isso corretamente, criamos um índice simples abaixo:

Pronto? Vamos começar!

Criação de taxonomias personalizadas com um plug-in (a maneira mais fácil)

A primeira coisa que você precisa fazer é instalar e ativar o plug-in Custom Post Type UI. Para obter detalhes, consulte nosso guia sobre como instalar um plug-in do WordPress.

Neste tutorial, já criamos um tipo de post personalizado e o chamamos de “Books”. Portanto, certifique-se de que você tenha criado um tipo de post personalizado antes de começar a criar suas taxonomias.

Em seguida, vamos acessar CPT UI ” Add/Edit Taxonomies (Adicionar/Editar taxonomias ) na área de administração do WordPress para criar sua primeira taxonomia.

Creating custom taxonomy using plugin

Nessa tela, você precisará fazer o seguinte:

  • Crie o slug de sua taxonomia (isso será incluído em seu URL)
  • Criar o rótulo plural
  • Criar o rótulo singular
  • Preenchimento automático de rótulos

Sua primeira etapa é criar um slug para a taxonomia a ser usada no URL e nas consultas de pesquisa do WordPress. Observe que um slug só pode conter letras e números, e será automaticamente convertido em letras minúsculas.

Em seguida, você preencherá os nomes no plural e no singular da sua taxonomia personalizada.

A partir daí, você tem a opção de clicar no link ‘Populate additional labels based on chosen labels’ (Preencher rótulos adicionais com base nos rótulos escolhidos). Se você fizer isso, o plug-in preencherá automaticamente o restante dos campos de rótulo para você.

Agora, você pode rolar para baixo até a seção “Additional Labels” (Rótulos adicionais).

Nessa área, você pode fornecer uma descrição do seu tipo de postagem.

Labeling your WordPress taxonomy

Esses rótulos são usados no painel do WordPress quando você edita e gerencia o conteúdo dessa taxonomia personalizada específica.

Em seguida, temos a opção de configurações. Nessa área, você pode configurar diferentes atributos para cada taxonomia que criar. Cada opção tem uma descrição detalhada do que faz.

Create custom taxonomy hierarchy

Na captura de tela acima, você verá que optamos por tornar essa taxonomia hierárquica.

Isso significa que nossa taxonomia “Assuntos” pode ter subtópicos. Por exemplo, um assunto chamado “Ficção” pode ter subtópicos como “Fantasia”, “Suspense”, “Mistério” e outros.

Há muitas outras configurações mais abaixo na tela do painel do WordPress, mas você pode deixá-las como estão para este tutorial.

Agora você pode clicar no botão “Add Taxonomy” (Adicionar taxonomia) na parte inferior para salvar sua taxonomia personalizada.

Depois disso, você pode editar o tipo de postagem associado a essa taxonomia no editor de conteúdo do WordPress para começar a usá-la.

Using taxonomy in post editor

Criação manual de taxonomias personalizadas (com código)

Esse método requer que você adicione código ao seu site WordPress. Se você nunca fez isso antes, recomendamos que leia nosso guia sobre como adicionar facilmente trechos de código no WordPress.

Não recomendamos a edição direta dos arquivos do WordPress porque qualquer pequeno erro pode danificar todo o seu site. É por isso que recomendamos que todos usem o WPCode, o plug-in de snippet de código mais fácil e seguro disponível.

Para começar, você precisará instalar e ativar o plug-in gratuito WPCode. Para obter instruções detalhadas, consulte nosso guia passo a passo sobre como instalar um plug-in do WordPress.

1. Criação de uma taxonomia hierárquica

Vamos começar com uma taxonomia hierárquica que funciona como categorias e pode ter termos pai e filho.

Depois de instalar e ativar o WPCode, você pode navegar até Code Snippets ” Add Snippet no painel do WordPress.

A partir daí, passe o mouse sobre ‘Add Your Custom Code (New Snippet)’ e clique em ‘Use Snippet’.

Add a new custom snippet in WPCode

Em seguida, você será levado à página “Create Custom Snippet” (Criar snippet personalizado).

Basta nomear seu novo snippet de código e colar o seguinte código na área de texto:

//hook into the init action and call create_book_taxonomies when it fires
 
add_action( 'init', 'create_subjects_hierarchical_taxonomy', 0 );
 
//create a custom taxonomy name it subjects for your posts
 
function create_subjects_hierarchical_taxonomy() {
 
// Add new taxonomy, make it hierarchical like categories
//first do the translations part for GUI
 
  $labels = array(
    'name' => _x( 'Subjects', 'taxonomy general name' ),
    'singular_name' => _x( 'Subject', 'taxonomy singular name' ),
    'search_items' =>  __( 'Search Subjects' ),
    'all_items' => __( 'All Subjects' ),
    'parent_item' => __( 'Parent Subject' ),
    'parent_item_colon' => __( 'Parent Subject:' ),
    'edit_item' => __( 'Edit Subject' ), 
    'update_item' => __( 'Update Subject' ),
    'add_new_item' => __( 'Add New Subject' ),
    'new_item_name' => __( 'New Subject Name' ),
    'menu_name' => __( 'Subjects' ),
  );    
 
// Now register the taxonomy
  register_taxonomy('subjects',array('books'), array(
    'hierarchical' => true,
    'labels' => $labels,
    'show_ui' => true,
    'show_in_rest' => true,
    'show_admin_column' => true,
    'query_var' => true,
    'rewrite' => array( 'slug' => 'subject' ),
  ));
 
}

Certifique-se de alterar o “Code Type” (Tipo de código) para “PHP Snippet” (Snippet de PHP) e alterne a chave para “Active” (Ativo).

Em seguida, você pode clicar em ‘Save Snippet’.

Add custom taxonomy with WPCode

Não se esqueça de substituir o nome da taxonomia e os rótulos no snippet por seus próprios rótulos de taxonomia. Você também notará que essa taxonomia está associada ao tipo de postagem Books (Livros). Você precisará alterar isso para o tipo de postagem com o qual deseja usá-la.

Em seguida, role a tela para baixo e verifique se as opções “Auto Insert” (Inserção automática) e “Run Everywhere” (Executar em todos os lugares) estão selecionadas na caixa de inserção.

WPCode Run Everywhere

Depois disso, você pode rolar de volta para a parte superior e clicar no botão “Update” (Atualizar) para ativar suas alterações.

2. Criação de uma taxonomia não hierárquica

Para criar uma taxonomia personalizada não hierárquica, como tags, você usará o WPCode e seguirá exatamente as mesmas etapas acima.

No entanto, você usará este código:

//hook into the init action and call create_topics_nonhierarchical_taxonomy when it fires
 
add_action( 'init', 'create_topics_nonhierarchical_taxonomy', 0 );
 
function create_topics_nonhierarchical_taxonomy() {
 
// Labels part for the GUI
 
  $labels = array(
    'name' => _x( 'Topics', 'taxonomy general name' ),
    'singular_name' => _x( 'Topic', 'taxonomy singular name' ),
    'search_items' =>  __( 'Search Topics' ),
    'popular_items' => __( 'Popular Topics' ),
    'all_items' => __( 'All Topics' ),
    'parent_item' => null,
    'parent_item_colon' => null,
    'edit_item' => __( 'Edit Topic' ), 
    'update_item' => __( 'Update Topic' ),
    'add_new_item' => __( 'Add New Topic' ),
    'new_item_name' => __( 'New Topic Name' ),
    'separate_items_with_commas' => __( 'Separate topics with commas' ),
    'add_or_remove_items' => __( 'Add or remove topics' ),
    'choose_from_most_used' => __( 'Choose from the most used topics' ),
    'menu_name' => __( 'Topics' ),
  ); 
 
// Now register the non-hierarchical taxonomy like tag
 
  register_taxonomy('topics','books',array(
    'hierarchical' => false,
    'labels' => $labels,
    'show_ui' => true,
    'show_in_rest' => true,
    'show_admin_column' => true,
    'update_count_callback' => '_update_post_term_count',
    'query_var' => true,
    'rewrite' => array( 'slug' => 'topic' ),
  ));
}

Observe a diferença entre os dois trechos de código. Na função register_taxonomy(), o valor do argumento hierárquico é definido como true para a taxonomia do tipo categoria e false para taxonomias do tipo tags.

Além disso, na matriz de rótulos para taxonomias não hierárquicas, adicionamos null para os argumentos parent_item e parent_item_colon, o que significa que nada será mostrado na interface do usuário para criar um item pai ou uma taxonomia que possa ter subtópicos.

Taxonomies in post editor

Novamente, não se esqueça de editar o código para incluir seus próprios rótulos de taxonomia personalizados.

Exibição de taxonomias personalizadas

Agora que criamos taxonomias personalizadas e adicionamos alguns termos, seu tema do WordPress ainda não os exibirá.

Para exibi-los, você precisará adicionar código ao seu tema ou tema filho do WordPress. Especificamente, esse código deve ser adicionado aos arquivos de modelo em que você deseja exibir os termos.

Você pode adicionar manualmente esse snippet aos arquivos do seu tema, como single.php, content.php, archive.php ou index.php. Para descobrir qual arquivo você precisa editar, consulte nosso guia de hierarquia de modelos do WordPress para obter instruções passo a passo.

No entanto, se não for feito corretamente, isso pode danificar seu site, por isso recomendamos mais uma vez o uso do plug-in gratuito WPCode.

Você precisará adicionar o seguinte código onde deseja exibir os termos:

<?php the_terms( $post->ID, 'topics', 'Topics: ', ', ', ' ' ); ?>

Em seguida, basta seguir as etapas acima para colar o snippet no WPCode.

Mas, em Inserção, você deve clicar no menu suspenso ao lado de “Localização” e selecionar onde deseja exibir a taxonomia, como antes da postagem, depois dela ou até mesmo entre parágrafos.

WPCode Insertion box

Para este tutorial, selecionaremos “Insert After Post” (Inserir após a postagem).

Você pode ver na imagem abaixo como ela aparecerá em seu site ativo.

Custom Taxonomy Displayed

Adição de taxonomias para posts personalizados

Agora que você sabe como criar taxonomias personalizadas, vamos colocá-las em prática com um exemplo.

Vamos criar uma taxonomia e chamá-la de “Não ficção”. Como temos um tipo de post personalizado chamado ‘Books’, é semelhante ao modo como você criaria um post de blog comum.

No painel do WordPress, você pode navegar até Books ” Subjects para adicionar um termo ou assunto.

Adding a term for your newly created custom taxonomy

Nessa tela, você verá 4 áreas:

  • Nome
  • Lesma
  • Pais
  • Descrição

No campo de nome, você escreverá o termo que deseja adicionar. Você pode pular a parte do slug e fornecer uma descrição para esse termo específico.

Por fim, clique no botão “Add New Subject” (Adicionar novo assunto) para criar sua nova taxonomia.

Seu termo recém-adicionado deverá aparecer na coluna da direita.

Term added

Agora, você tem um novo termo que pode ser usado nas postagens do seu blog. Você também pode adicionar termos diretamente ao editar ou escrever conteúdo nesse tipo específico de post.

Basta acessar Books ” Add New para criar uma postagem.

No editor de postagens, você encontrará a opção de selecionar ou criar novos termos na coluna da direita.

Adding new terms or select from existing terms

Depois de adicionar os termos, você pode ir em frente e publicar o conteúdo.

Todas as suas postagens arquivadas sob esse termo poderão ser acessadas em seu site usando seu próprio URL. Por exemplo, as postagens arquivadas sob o assunto “Ficção” apareceriam no seguinte URL:

https://example.com/subject/fiction/

Taxonomy template preview

Agora que você criou taxonomias personalizadas, talvez queira exibi-las no menu de navegação do seu site.

Vá até Appearance ” Menus e selecione os termos que deseja adicionar na guia de taxonomia personalizada que aparece no lado esquerdo da tela.

Adding terms to navigation menu

Não se esqueça de clicar no botão “Save Menu” para salvar suas configurações.

Agora você pode visitar seu site para ver o menu em ação.

Adding custom taxonomy in navigation menu

Para obter mais detalhes, consulte nosso guia passo a passo sobre como criar um menu suspenso no WordPress.

Tutorial em vídeo

Se preferir assistir e aprender a criar taxonomias personalizadas, confira nosso tutorial em vídeo:

Subscribe to WPBeginner

Bônus: Leve as taxonomias do WordPress mais longe

As taxonomias personalizadas permitem que você faça muitas coisas. Por exemplo, você pode exibi-las em um widget da barra lateral ou adicionar ícones de imagem para cada termo.

Você também pode criar taxonomias personalizadas e permitir que os usuários se inscrevam em termos individuais. Dessa forma, seus leitores só receberão atualizações sobre o conteúdo específico que interessa a eles.

Se quiser personalizar o layout de suas páginas de taxonomia personalizada, você pode consultar o SeedProd. Ele é o melhor construtor de páginas e de temas do WordPress do tipo arrastar e soltar que permite criar layouts personalizados sem qualquer codificação.

Select three column layout

Para saber mais, consulte nosso artigo sobre como criar uma página personalizada no WordPress.

Esperamos que este artigo tenha ajudado você a aprender como criar taxonomias personalizadas no WordPress. Talvez você também queira ver nossos guias sobre como adicionar imagens de taxonomia (ícones de categoria) no WordPress e como alterar, mover e excluir corretamente as categorias do WordPress.

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

112 ComentáriosDeixe uma resposta

  1. Syed Balkhi

    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. Jiří Vaněk

    Thank you for the clear instructions. I would like to make my own taxonomy for tutorials on the site. This tutorial is great and clear, thanks.

    • WPBeginner Support

      Glad it was helpful :)

      Administrador

  3. Kira

    Hello.
    I don’t understand this part:

    ID, ‘topics’, ‘Topics: ‘, ‘, ‘, ‘ ‘ ); ?>

    I mean, should I paste exactly that part into my loop-single.php?
    I’m using a taxonomy called “writer”

    • WPBeginner Support

      It would depend on where you want to display the terms, normally it would be added to the single.php.

      Administrador

  4. Wolfgang

    Hi,
    I used your article to create a CPT with a hierarchical and a non-hierarchical taxonomy attached to it. I created a few entries and it all seems to be working fine. Both taxonomies display fine in their respective archive pages. One thing I noticed though when I tried to add the taxonomies to the menu was that the non-hierarchical taxonomy was available in the “Add menu item” column but the hierarchical taxonomy was NOT.
    Is that an expected behavior? If not what could be going wrong?
    Thanks

    • WPBeginner Support

      The most common issues you could check would be that you have published content in the taxonomy and you may want to test adding a different content type to test if it is an issue with the taxonomy or something else.

      Administrador

  5. mb

    what does this line do
    ‘menu_name’ => __( ‘Subjects’ ),

    is this in order to add taxonomies to the menu

  6. aditya

    hii i try everything but i taxonomy not showing in product. please help me.

    • WPBeginner Support

      You would want to check under your preferences to ensure it is not hidden for your user.

      Administrador

  7. Gina Wilson

    This tutorial and specifically the part of how to display the custom taxonomy was a lifesaver! I’m very much a beginner and this was very helpful in understanding where I went wrong in my coding.

    Thank you!!!

    • WPBeginner Support

      Glad our guide was helpful :)

      Administrador

  8. fengquanli

    this is very confident with the custom post ui, thanks very much ,it’s very useful for get them.

    • WPBeginner Support

      Glad our guide was helpful :)

      Administrador

  9. Bruno Oliveira

    Awesome tutorial! i have one question. how do i use my new taxonomy slug as permalink like category (/%category%/%year%/%monthnum%/%day%/%postname%/)

    I want something like /%custom_taxonomy%/%year%/%monthnum%/%day%/%postname%/

    i keep getting 404 error

    • WPBeginner Support

      That is not something WordPress would allow by default and would require some custom coding to set up.

      Administrador

  10. vikas

    i tried the plugin method , it sucessfully created a new category in custom post type but it is not showing on my posts like tags and other categoties. can you help me with that?

    • WPBeginner Support

      You would want to reach out to the support for your specific theme for customizing the display to include your taxonomy.

      Administrador

  11. Richard

    I am creating a podcast network where I have multiple podcasts on a single site with episodes under each individual podcast. Would something like this work for that? I really don’t want to go the multi site route.

    • WPBeginner Support

      You can certainly use this should you want or another option would be to create a custom post type depending on your preference.

      Administrador

  12. Maria

    Hello is possible add the custom taxonomies to a custom product type?

    I create a custom product call drinks and i have several taxonomies like country, material and etc

    I want when the user click in drinks then only apperas those taxonomies, is this posiible?

    • WPBeginner Support

      You should be able to using the plugin method.

      Administrador

  13. Parveen Kaushik

    Hi,
    Thanks for this article, I am getting 404 page after using this code, can you help me

    • WPBeginner Support

      If you haven’t done so yet, resave your permalinks for the most common solution :)

      Administrador

  14. Mike Smith

    this code works great on my site for work. Can you tell me how to add the custom taxonomy into the site’s rss feed?

  15. angela

    thank you for taking the time to post this, this was the first site that actually explained this and it made sense, haha. im a happy camper now

    • WPBeginner Support

      You’re welcome, glad our guide could help simplify the process :)

      Administrador

  16. Jem

    How to show custom taxonomy (checkbox list) in Post editor page like category and tag?

    • WPBeginner Support

      It would depend on which method you used to create the custom taxonomy, if you’re using the plugin you would want to reach out to the plugin’s support to make sure they have show_in_rest set to true for seeing it in the block editor.

      Administrador

      • Jem

        No, I am not using any plugin. I have just copy paste your snippet. Its create new taxonomy. But it is not display in post editor page like category, tags display on rightside panel.

        Can you please guide me how can I show custom taxonomy in post editor page?

        • WPBeginner Support

          In the register_taxonomy array, you would want to first try adding a new line with the code below:
          ‘show_in_rest’ => true,

  17. Jim Gersetich

    The first half of this post is completely useless. the Simple Taxonomy plugin doesn’t work with the current WordPress version, and it hasn’t been updated in four years.

    Please try to find another plugin and change that section to go with the new one.

    • WPBeginner Support

      Thank you for letting us know, we’ll certainly take a look at updating this article.

      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.