WordPress : Advance Custom Filed Get Field pour les termes ne fonctionne pas
Vous souhaitez afficher l’icône de catégorie dans la liste des publications, pour cela, je crée un champ personnalisé category_icon en utilisant ACF. ci-dessous est mon code pour obtenir l’URL de l’image de l’icône, mais ne reçoit rien, même pas d’erreur également.
<span class="blog-info-categories">
<?php
print apply_filters( 'taxonomy-images-queried-term-image', '' );
$terms = get_terms('category');?>
<?php
$taxonomy = 'category';
// Get the term IDs assigned to post.
$post_terms = wp_get_object_terms($post->ID, $taxonomy, array('fields' => 'ids'));
// Separator between links.
$separator = ', ';
if (!empty($post_terms) && !is_wp_error($post_terms)) {
$term_ids = implode(',', $post_terms);
$terms = wp_list_categories(array(
'title_li' => '',
'style' => 'none',
'echo' => false,
'taxonomy' => $taxonomy,
'include' => $term_ids));
$terms = rtrim(trim(str_replace('<br />', $separator, $terms)), $separator); $termss = wp_get_post_terms( $post->ID,array( 'category' ) );
$icon = get_field('category_icon', $taxonomy . '_' . $term_ids);
echo $icon['url'];
echo $terms;
}
?>
</span>
Solution n°1 trouvée
La fonction wp_list_categories() génère une liste html qui est une chaîne que j’utiliserais toujours get_terms() donc j’ai quelque chose à parcourir. Est-ce une solution à votre problème ? Je pense que je comprends mais je peux réviser la solution en fonction si je me trompe.
$terms = get_terms( $taxonomy, array(
'hide_empty' => false,
'include' => $post_terms
)
);
foreach($terms as $term){
$icon = get_field('category_icon', $term);
$icon = $icon['url'];
$name = $term->name;
$url = get_term_link($term, $taxonomy);
echo '<img src="' . $icon . '">' . '<a href="' . $url . '">' . $name . '</a>, ';
}
0 commentaire