【发布时间】:2015-06-03 01:18:22
【问题描述】:
我正在设置一个照片库,其中包含一个主图像和 6 个缩略图。悬停缩略图时,主图像将发生变化。简单的东西。我遇到的问题是,当页面加载时,主图像是来自第一个中继器行的图像(就像我想要的那样),但是在缩略图中,第一个中继器行没有得到输出。所以只输出缩略图 2 - 6。我是高级自定义字段的新手。不确定这是否与此有关,或者只是一个简单的 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>
【问题讨论】:
-
不太清楚为什么这不起作用,你能链接到一个例子吗?对于测试,您是否尝试过将第二个循环放在第一个循环之前,这将排除第一个循环或“中断”是否以某种方式影响您的第二个循环。
-
@johnnyd23 我刚刚尝试交换 while 循环,它确实按我想要的方式工作。显然,事情并没有按照我现在想要的顺序进行。但是我要显示的所有内容都在显示。我尝试更改我的变量名称以确保它们没有冲突并且不起作用。我还将所有内容都放在一个while循环中,但这也没有解决。此刻有点难过。
标签: php wordpress advanced-custom-fields