Поле «Заранее заполненное поле» для условий не работает - PullRequest
0 голосов
/ 10 июня 2019

Хотите отобразить значок категории в списке сообщений, для этого я создаю настраиваемое поле category_icon с помощью ACF. ниже приведен мой код для получения URL-адреса изображения значка, но также ничего не получено, даже без ошибок.

<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>

i

1 Ответ

0 голосов
/ 10 июня 2019

Функция wp_list_categories () выводит html-список, представляющий собой строку, которую я всегда буду использовать get_terms (), поэтому у меня есть кое-что, чтобы пройтись по ней. Это решение вашей проблемы? Я думаю, что понимаю, но могу пересмотреть решение, чтобы удовлетворить, если я ошибаюсь.

$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>, ';
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...