如何在组内输出中继器的图像?

时间:2019-06-27 14:00:25

标签: php wordpress advanced-custom-fields

我正在尝试从“高级自定义字段”中的组内的中继器输出图像,但无法获取图像URL。该组称为“首页”,中继器称为“幻灯片”,其字段为“ background_image”。

请参见下面的代码。

    $rows = get_field('slideshow');

    if($rows) {
        $image = get_field('background_image');
        $size = 'full';

        foreach($rows as $row) {
?>
            <li class="swiper-slide">
                <div class="bg parallax2" data-speed='.5' style='background-image: url("<?php echo $image['url']; ?>")'></div>
            </li>
<?php
        }
    }
?>

背景图片网址为空。

2 个答案:

答案 0 :(得分:0)

转发器中的字段称为子字段(get_sub_field),因此您的代码应为

      $rows = get_sub_field('slideshow');

    if($rows) {
        $image = get_sub_field('background_image');
        $size = 'full';

        foreach($rows as $row) {
?>
            <li class="swiper-slide">
                <div class="bg parallax2" data-speed='.5' style='background-image: url("<?php echo $image['url']; ?>")'></div>
            </li>
<?php
        }
    }
?>

答案 1 :(得分:0)

这应该有效:

<?php
$homepageFields = get_field('homepage');

$slideshow = $homepageFields['slideshow'];

if ($slideshow) {
    $size = 'full';

    foreach ($slideshow as $row) {
        $image = $row['background_image'];
        ?>
        <li class="swiper-slide">
            <div class="bg parallax2" data-speed='.5' style='background-image: url("<?php echo $image['sizes'][$size]; ?>")'></div>
        </li>
        <?php
    }
}
?>