WordPress : Advance Custom Filed Get Field pour les termes ne fonctionne pas

Publié par Jean-Michel le

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>

je

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>, ';
}

Catégories : Wordpress

Jean-Michel

Jean-Michel est en charge de la partie blog du site. Il met en place la stratégie de contenu et répond aux questions fréquentes sur Wordpress.

0 commentaire

Laisser un commentaire

Avatar placeholder

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *