Sappiamo tutti quanto sia importante organizzare i contenuti su un sito web. Noi di WPBeginner comprendiamo che l'utilizzo di categorie e sottocategorie aiuta i visitatori a esplorare il tuo sito e migliora il suo posizionamento nei risultati di ricerca. Una buona struttura di categorie aiuta anche i visitatori a trovare ciò di cui hanno bisogno.
La maggior parte dei temi WordPress elencherà automaticamente tutte le categorie associate a un post, anche le sottocategorie. Questo può creare molta confusione per i tuoi visitatori. Tuttavia, di recente abbiamo avuto un lettore che voleva mostrare solo la categoria principale sulla pagina del suo singolo post. Voleva che i suoi visitatori si concentrassero sull'argomento principale invece di essere sopraffatti da molte sottocategorie.
In questo articolo, ti mostreremo come utilizzare un semplice pezzo di codice per modificare il modo in cui WordPress visualizza le categorie. Ciò ti consentirà di mostrare solo la categoria principale su una pagina di singolo post, il che può migliorare notevolmente l'esperienza del tuo sito per i visitatori.

Quando visualizzare solo la categoria principale in WordPress
Molti proprietari di siti web utilizzano categorie principali e secondarie per creare una struttura per i loro siti web.
Ad esempio, un blog di viaggi potrebbe avere destinazioni di viaggio organizzate per categorie, dove ogni regione è una categoria principale e le città sono categorie secondarie.

Allo stesso modo, un blog di cucina può pubblicare ricette organizzate in categorie padre e figlio. Ad esempio, una categoria padre potrebbe essere il tipo di cucina e una categoria figlio il tipo di piatto.
Ora, la maggior parte dei temi WordPress utilizza il template tag the_category() per elencare tutte le categorie associate a un post.
Questa funzione è efficiente, ma visualizzerà tutte le categorie in ordine alfabetico e ignorerà completamente la relazione padre/figlio.
Detto questo, diamo un'occhiata a come cambiare questo comportamento e visualizzare solo la categoria padre nel loop di WordPress.
Visualizza solo la categoria padre nel loop dei post di WordPress
Per questo tutorial, dovrai modificare i file del tuo tema WordPress. Se non l'hai mai fatto prima, consulta il nostro articolo su come copiare e incollare snippet di codice in WordPress.
Innanzitutto, devi aggiungere un codice al file functions.php del tuo tema o utilizzare un plugin per snippet di codice. Consigliamo di utilizzare WPCode perché ti consente di aggiungere codice senza interrompere il tuo sito, e la sua convalida intelligente degli snippet di codice ti aiuta a prevenire errori di codice comuni.
Scopri di più nella nostra guida su come aggiungere codice personalizzato in WordPress senza interrompere il tuo sito.
Per questo tutorial, utilizzeremo la versione gratuita di WPCode. Sebbene non disponga di tutte le funzionalità avanzate della versione completa, offre tutto il necessario per iniziare.
La prima cosa da fare è installare e attivare il plugin WPCode. Se hai bisogno di aiuto, puoi seguire la nostra guida passo passo su come installare un plugin di WordPress.
Dopo l'attivazione, puoi andare alla pagina WPCode » Nuovo Snippet

Questo aprirà una pagina in cui potrai creare uno snippet personalizzato.
Innanzitutto, devi aggiungere un titolo per lo snippet. Successivamente, puoi copiare e incollare il seguente snippet di codice nell'area di anteprima del codice.
function wpb_get_parent_terms($taxonomy = 'category')
{
$currentPost = get_post();
$terms = get_the_terms($currentPost->ID, $taxonomy);
if (is_wp_error($terms)) {
/** @var \WP_Error $terms */
throw new \Exception($terms->get_error_message());
}
$map = array_map(
function ($term) use ($taxonomy) {
return '<a href="' . esc_url(get_term_link($term->term_id,
$taxonomy)) . '" title="' . esc_attr($term->name) . '">
' . $term->name . '
</a>';
},
array_filter($terms, function ($term) {
return $term->parent == 0;
})
);
return implode(', ', $map);
}

Successivamente, devi selezionare l'opzione 'Snippet PHP' dal menu a discesa Tipo di codice e attivare l'interruttore Inattivo su Attivo.
Infine, assicurati di fare clic sul pulsante ‘Salva Snippet’ per memorizzare le tue impostazioni.

Questo codice crea semplicemente una nuova funzione wpb_get_parent_terms(). Per impostazione predefinita, questa funzione visualizzerà solo le categorie padre.
Successivamente, devi inserire questa funzione nei file del tuo tema WordPress dove desideri visualizzare solo la categoria padre.
Per capire quale file di template esaminare, consulta il nostro foglio di riferimento sulla gerarchia dei template di WordPress per principianti.
In sostanza, cercherai il tag template the_category() all'interno del loop di WordPress. Una volta trovato, dovrai sostituirlo con il seguente codice:
<?php wpb_get_parent_terms(); ?>
Questo codice visualizzerà solo la tua categoria padre.
Se hai più categorie che sono categorie padre o autonome, allora verranno visualizzate anche tutte queste categorie.

Lo snippet di codice funzionerà anche per tutte le altre tassonomie. Ad esempio, le categorie di prodotti WooCommerce o qualsiasi tassonomia personalizzata che potresti avere.
Modifica semplicemente il codice in questo modo:
<?php wpb_get_parent_terms( 'product_cat '); ?>
Questo codice visualizzerà le categorie di prodotti per un negozio WooCommerce.
Visualizzerà anche solo le categorie padre o autonome per un prodotto.

Se desideri visualizzare una tassonomia personalizzata, sostituisci product_cat con il nome della tua tassonomia personalizzata.
Guide esperte sulla visualizzazione delle categorie in WordPress
Speriamo che questo articolo ti abbia aiutato a imparare come visualizzare solo la categoria padre per i tuoi post di WordPress. Potresti anche voler consultare altre guide relative alla visualizzazione delle categorie di WordPress:
- Come visualizzare solo la categoria figlio nel loop dei post di WordPress
- Come visualizzare le sottocategorie nelle pagine delle categorie in WordPress
- Come visualizzare le descrizioni delle categorie in WordPress
- Come cambiare l'ordine delle categorie in WordPress
- Come visualizzare post recenti di una categoria specifica in WordPress
- Come mostrare / nascondere le categorie in WordPress (Guida definitiva)
- Come mostrare categorie vuote nei widget di WordPress
- Come stilizzare le singole categorie in modo diverso in WordPress
- Come nascondere o stilizzare le tue sottocategorie in WordPress
- Come aggiungere immagini di tassonomia (icone di categoria) in WordPress
Se ti è piaciuto questo articolo, iscriviti al nostro canale YouTube per tutorial video su WordPress. Puoi anche trovarci su Twitter e Facebook.

Davide
Ottimo! E se volessi dare un CSS diverso a queste categorie?
Pedrille
Fantastico! Grazie
Nithi
Come visualizzare solo la categoria Figlia? (Come nell'immagine, "Thesis" sopra?)
Cami Tirapani
Mi chiedo la stessa cosa. :/
Joseph
So che è vecchio, ma quella sarebbe solo la categoria corrente
sathish
molto utile
JordashTalon
Dovresti votare questo post su Wordpress. Ho notato una grande mancanza nell'aggiungere la funzionalità di profondità alle Funzioni di Wordpress: http://wordpress.org/extend/ideas/topic/add-depth-parameter-to-the_category?replies=3#post-21041
JordashTalon
Funzioni di categoria di Wordpress, intendo
Kate M
Didn’t work for me
AselHora
aggiungi le date ai tuoi post. in questo modo sappiamo quando li hai scritti e non includere snippet di codice vecchi di 5 anni.
John Saddington
ottimo tutorial!