具有2个循环的高级自定义字段中继器

时间:2015-03-30 05:48:46

标签: php wordpress advanced-custom-fields

我正在设置一个照片库,其中包含一张主图片和6张缩略图。将鼠标悬停在缩略图上时,主图像将会改变。简单的东西。我遇到的问题是,当页面加载时,主图像是来自第一个转发器行的图像(就像我想要的那样),但是在缩略图中,第一个转发器行不能输出。所以只输出缩略图2 - 6。我是Advanced Custom Fields的新手。不确定它是否与此有关,或者它只是一个简单的PHP错误。这是我的代码:

<?php if( have_rows('property_images') ): 

    while( have_rows('property_images') ): the_row();

        $image = get_sub_field('property_image');
        $url = $image['url'];

    ?>

    <img src="<?php echo $url ?>" class="property-main-img">

    <?php
        break;
        endwhile;
        endif; 
    ?>

            <ul>

                <?php if( have_rows('property_images') ): 

                        $i = 1;

                        while( have_rows('property_images') ): the_row();

                            $image = get_sub_field('property_image');
                            $url = $image['url'];

                        ?>

                        <?php if($i % 3 == 0) { ?>

                            <li class="prop-thumb-r"><img src="<?php echo $url ?>" alt="<?php echo $image['alt']; ?>" width="170" /></li>

                        <?php } else if($i == 1 || $i % 4 == 0) { ?>

                            <li class="prop-thumb-l"><img src="<?php echo $url ?>" alt="<?php echo $image['alt']; ?>" width="170" /></li>

                        <?php } else { ?>

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

                        <?php } ?>

                        <?php
                             $i++;
                         endwhile; 
                    endif; 
                ?>

            </ul>

1 个答案:

答案 0 :(得分:0)

似乎休息可能导致问题。尝试使用此方法通过仅从转发器字段中抓取第一行来获取第一个图像。

<?php 
    $rows = get_field( 'property_images' );
    $first_image = $rows[0]['property_image'];
?>

<img src="<?php echo $first_image['url'] ?>" class="property-main-img">