Изображение ACF в репитере не работает

Для создания собственной темы WP я использую ACF. Мне нужно иметь повторитель, который выводит изображения. Я установил его на объект изображения и используя правильный код. На самом деле я пробовал без повторителя, и он работает отлично. Только в ретрансляторе это терпит неудачу.

                <div class="row col-md-12">
<?php

// check if the repeater field has rows of data
if( have_rows('pics') ):

// loop through the rows of data
while ( have_rows('pics') ) : the_row();

// display a sub field value
?><div class="col-md-4">

<?php

$image = get_field('img');

if( !empty($image) ): ?>

<img src="<?php echo $image; ?>" alt="<?php echo $image['alt']; ?>" />

<?php endif; ?>
</div> <?

endwhile;

else :

// no rows found

endif;

?>
</div>

Что заставляет данные изображения не зацикливаться?

1

Решение

Ваш код выглядит нормально, но, проверив, как я это сделал, я считаю, что вы должны использовать get_sub_field вместо get_field

http://www.advancedcustomfields.com/resources/get_sub_field/

Ваш комментарий об использовании части массива [‘url’] также актуален. Это работает для меня;

    $image = get_sub_field('img');

if( !empty($image) ): ?>

<img src="<?php echo $image['url']; ?>" alt="<?php echo $image['alt']; ?>" />

<?php endif; ?>
4

Другие решения

Я думаю, что это то, что вы должны сделать:

<?php

// check if the repeater field has rows of data
if( have_rows('img') ):

// loop through the rows of data
while ( have_rows('img') ) : the_row();

// display a sub field value
$image = get_sub_field('sub_img'); ?>
<img src="<?php echo $image['url']; ?>" alt="<?php echo $image['alt']; ?>" />
<?php endwhile;

else :

// no rows found

endif;

?>

Это предполагает, что вы выводите объект изображения, а не URL в настройках ACF.

4

По вопросам рекламы [email protected]