Volete visualizzare solo la categoria genitrice dei vostri articoli WordPress?
Di default, la maggior parte dei temi di WordPress elenca tutte le categorie associate a un articolo. Tuttavia, alcuni utenti potrebbero voler visualizzare solo la categoria genitore ed escludere le categorie figlio/bambino.
In questo articolo vi mostreremo come modificare il loop dei post di WordPress per visualizzare solo la categoria genitrice su un singolo articolo.
Quando visualizzare solo la categoria genitore in WordPress
Molti proprietari di siti web utilizzano categorie di figli/bambini per creare una struttura per i loro siti web.
Ad esempio, un blog di viaggi può avere destinazioni di viaggio organizzate per categorie, dove ogni regione è una categoria genitore e le città sono categorie figlio/bambino.
Allo stesso modo, un blog di cucina può pubblicare ricette organizzate in categorie figlio/bambino. Ad esempio, una categoria genitore potrebbe essere il tipo di cucina e una categoria figlio/bambino il tipo di piatto.
Ora, la maggior parte dei temi di WordPress utilizza il
tag template_category ()
per elencare tutte le categorie associate a un articolo.
Questa funzione è efficiente, ma visualizza tutte le categorie in ordine alfabetico e ignora completamente la relazione figlio/bambino.
Detto questo, vediamo come modificare questo comportamento e visualizzare solo la categoria genitrice nel loop di WordPress.
Visualizzare solo la categoria genitore nel loop degli articoli di WordPress
Per questa esercitazione, è necessario modificare i file del tema di WordPress. Se non l’avete mai fatto prima, selezionate il nostro articolo su come copiare e incollare frammenti di codice in WordPress.
Per prima cosa, è necessario aggiungere il seguente codice al file functions.php del tema o utilizzare un plugin per gli snippet di codice come WPCode (consigliato):
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);
}
Per maggiori dettagli, consultate la nostra guida su come add-on di codice personalizzato in WordPress senza rompere il sito.
Questo codice crea semplicemente una nuova funzione wpb_get_parent_terms()
. Di default, questa funzione visualizza solo le categorie genitrici.
Successivamente, è necessario inserire questa funzione nei file del tema di WordPress in cui si desidera visualizzare la sola categoria genitore.
Per capire quale file di template esaminare, consultate il nostro cheatsheet sulla gerarchia di template di WordPress per i principianti.
In pratica, dovrete cercare il tag template the_category()
; all’interno del loop di WordPress. Una volta trovato, è necessario sostituirlo con il codice seguente:
<?php wpb_get_parent_terms(); ?>
Questo codice visualizza solo la categoria genitore.
Se si hanno più categorie che sono genitrici o indipendenti, verranno visualizzate anche tutte queste categorie.
Lo snippet di codice funziona anche per tutte le altre tassonomie. Ad esempio, le categorie di prodotti di WooCommerce o qualsiasi tassonomia personalizzata.
È sufficiente modificare il codice in questo modo:
<?php wpb_get_parent_terms( 'product_cat '); ?>
Questo codice visualizza le categorie di prodotti per un negozio WooCommerce.
Inoltre, visualizza solo le categorie genitrici o indipendenti di un prodotto.
Se si desidera visualizzare una tassonomia personalizzata, sostituire product_cat con il nome della tassonomia personalizzata.
Guide esperte sulla visualizzazione delle categorie in WordPress
Ora che sapete come visualizzare solo la categoria genitore per i vostri articoli di WordPress, potreste voler vedere altre guide relative alla visualizzazione delle categorie in WordPress:
- Come visualizzare solo la categoria figlio/bambino nel loop di articoli di WordPress
- Come visualizzare le sottocategorie sulle pagine delle categorie in WordPress
- Come visualizzare le descrizioni delle categorie in WordPress
- Come modificare l’ordinamento delle categorie in WordPress
- Come visualizzare gli articoli recenti di una categoria specifica in WordPress
- Come mostrare/nascondere le categorie in WordPress (Guida definitiva)
- Come mostrare le categorie vuote nei widget di WordPress
- Come dare uno stile diverso alle singole categorie in WordPress
- Come nascondere o abbellire le sottocategorie in WordPress
- Come aggiungere le immagini della tassonomia (icone di categoria) in WordPress
Speriamo che questo articolo vi abbia aiutato a capire come visualizzare solo la categoria genitore per i vostri articoli di WordPress. Potreste anche voler consultare la nostra guida su come visualizzare i campi personalizzati al di fuori del loop o la nostra scelta di esperti del miglior software chatbot AI per il vostro sito web.
Se questo articolo vi è piaciuto, iscrivetevi al nostro canale YouTube per le esercitazioni video su WordPress. Potete trovarci anche su Twitter e Facebook.
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!
Davide says
Great! And if i want to give a different css to these categories?
Pedrille says
Awesome ! thks
Nithi says
How to display only Child category? (Like in the image, “Thesis” above? )
Cami Tirapani says
I’m wondering the same thing. :/
Joseph says
I know its old, but that would just be the current category
sathish says
very useful
JordashTalon says
You should vote this post up on WordPress I’ve noticed a huge lack of adding the Depth feature to WordPress Functions: http://wordpress.org/extend/ideas/topic/add-depth-parameter-to-the_category?replies=3#post-21041
JordashTalon says
WordPress Category functions that is
Kate M says
Didn’t work for me
AselHora says
put date stamps to your posts. this way we know when you wrote it and not include code snippets 5 years old.
John Saddington says
great tut!