Отображение поля изображения ACF внутри цикла foreach

#wordpress #advanced-custom-fields

#wordpress #дополнительно-пользовательские-поля

Вопрос:

Я создал пользовательскую таксономию для своего пользовательского типа записи.

Каждому термину нужно отображать только его имя (с которым он работает $term->name; ) и изображение. Для изображения я использую ACF (как я обычно делаю для пользовательских полей на странице или публикации). Он настроен, и я могу выбрать изображение, когда добавляю новый термин на панели инструментов, но как мне отобразить его в цикле foreach? Обычный get_field() ничего не показывает.

 <ul class="taxonomy-terms">
    <?php
    $terms = get_terms( array(
        'taxonomy' => 'my_taxonomy',
        'hide_empty' => false,
    ) );
    ?>
    <?php foreach ( $terms as $term) { ?>
        <li>
            <img src="<?php the_field('image'); ?>" />
            <?php echo $term->name; ?>
        </li>
    <?php } ?>
</ul>
 

Проблема в том, что the_field('image');

Поле изображения настроено на возврат URL-адреса изображения.

Ответ №1:

Возможно, вам следует добавить свою таксономию в качестве параметра при вызове изображения, попробуйте :

 <?php if( get_field('image') ): ?>
    <img src="<?php the_field('image', $term); ?>" />
<?php endif; ?>
 

Лучше протестировать поле изображения, так как вы не хотите показывать пустой <img> тег.

Также, пожалуйста, убедитесь, что вы не изменили имя поля в настройках поля изображения.

Вы можете прочитать об этом здесь: https://www.advancedcustomfields.com/resources/image / И здесь : https://www.advancedcustomfields.com/resources/adding-fields-taxonomy-term /

Будем надеяться, что это сработает,

Хорошего дня.

Ответ №2:

Вы должны передать текущий член цикла в качестве второго параметра функции ACF:

 <?php the_field('image', $term); ?>
 

Смотрите здесь:
https://www.advancedcustomfields.com/resources/adding-fields-taxonomy-term /

Комментарии:

1. Спасибо, это работает. Я пробовал всевозможные сложные решения.