Ottenere la tassonomia personalizzata da un tipo di post personalizzato
Ho un tipo di post personalizzato chiamato email_block e una tassonomia personalizzata chiamata block_type. Ho bisogno di scorrere tutti gli email block per scoprire quale tassonomia personalizzata (block_type) hanno. So come ottenere tutti i tipi di post personalizzati email block, ma sto avendo difficoltà a trovare a quale block_type appartengono.
Questo è il codice che ho finora. Sto usando un campo relazione di Advanced Custom Fields per filtrare quali email block voglio visualizzare.
<?php
$posts = get_field('block_selector');
if( $posts ): ?>
<ul>
<?php foreach( $posts as $post): // la variabile deve essere chiamata $post (IMPORTANTE) ?>
<?php setup_postdata($post); ?>
<li>
<a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
<span>Campo personalizzato da $post: <?php the_field('author'); ?></span>
</li>
<?php endforeach; ?>
</ul>
<?php wp_reset_postdata(); // IMPORTANTE - resetta l'oggetto $post in modo che il resto della pagina funzioni correttamente
endif; ?>
Intendi get_the_terms()?
<?php
$terms = get_the_terms( $post->ID, 'block_type' );
foreach($terms as $term) {
echo $term->name;
}
?>
O l'ho semplificato troppo?

questo è il modo migliore per farlo
<?php
$taxonomy = 'movies-category';
$terms = get_object_term_cache( $post->ID, $taxonomy );
$output = '';
foreach($terms as $term) {
if(!empty($output))
$output .= ' | ';
$output .= '<span class="cat"><a href="'. esc_url( get_term_link( $term )). '">'.$term->name.'</a></span>';
}
echo $output;
?>

Esiste un modo per conoscere la gerarchia delle tassonomie personalizzate e passarla all'output?

Puoi leggere questa risorsa https://developer.wordpress.org/reference/functions/get_term_parents_list/
Oppure https://wordpress.stackexchange.com/a/25035/185919
