Mostra la tassonomia delle categorie per un custom post type
Ho un custom post type e una tassonomia che permette all'utente di selezionare la categoria del post.
Ecco la mia tassonomia personalizzata:
add_action( 'init', 'create_talcat_taxonomy', 0);
function create_Talcat_taxonomy()
{
register_taxonomy ( 'Talcat', 'artist', array( 'hierarchical' =>
true, 'label' => 'Categorie', 'query_var' => true, 'rewrite' => true )
);
}
Nella mia homepage sto interrogando post_type=artist, che funziona bene e mostra i miei post di artisti. Tuttavia, come posso stampare/visualizzare il nome della categoria a cui appartiene il post e poi collegarlo a quella pagina di categoria?

Ho trovato un modo semplice e pulito per visualizzare il termine della tassonomia assegnato al post con il seguente codice:
<?php the_terms( $post->ID, 'NOME DELLA TASSONOMIA', ' ', ' / ' ); ?>
L'uso di the_terms recupera i termini associati all'oggetto/i specificato, nelle tassonomie fornite.
Qui un link al codex con esempi e ulteriori dettagli.

Credo che tu ti riferisca ai termini, non alle categorie. Puoi usare wp_list_categories
per recuperare e visualizzare i termini a cui appartiene un articolo.
Ecco un esempio funzionante dal codex. Ricorda che la variabile $taxonomy
può essere cambiata in category
o in qualsiasi tassonomia personalizzata
<?php
$taxonomy = 'NOME DELLA TUA TASSONOMIA';
// ottieni gli ID dei termini assegnati all'articolo.
$post_terms = wp_get_object_terms( $post->ID, $taxonomy, array( 'fields' => 'ids' ) );
// separatore tra i link
$separator = ', ';
if ( !empty( $post_terms ) && !is_wp_error( $post_terms ) ) {
$term_ids = implode( ',' , $post_terms );
$terms = wp_list_categories( 'title_li=&style=none&echo=0&taxonomy=' . $taxonomy . '&include=' . $term_ids );
$terms = rtrim( trim( str_replace( '<br />', $separator, $terms ) ), $separator );
// visualizza le categorie dell'articolo
echo $terms;
}
?>
Solo un consiglio, non usare lettere maiuscole nel nome della tua tassonomia quando la registri. Nella maggior parte dei casi causa problemi

Questo causa un errore di sintassi, unexpected '>' sulla riga che dice &post_terms.
