所以我的任务是制作一个“图像广告”,放在这个网站的侧边栏上。客户端希望能够将5个图像上载到ACF选项页面,然后在每次页面刷新时从那里随机提取一个图像并显示在侧边栏上。
我想知道是否有人可以帮助我。
<?php
$rows = get_field(\'image_advert_repeater\'); // get all the rows
$rand_row = $rows[ array_rand($rows, 1) ]; // get a random row
$rand_row_image = $rand_row[\'image_advert_images\']; // get the sub field value
// Note
// $first_row_image = 123 (image ID)
$image = wp_get_attachment_image_src( $rand_row_image, \'full\' );
// url = $image[0];
// width = $image[1];
// height = $image[2];
?>
<img src="<?php echo $image[0]; ?>" />
这是我目前试图用来显示图像的代码。它取自ACF Repeater文档,我已经编辑过它以使用我的Repeater,但我似乎无法让它工作。我还尝试在字段名称的末尾添加“选项”,以查看这是否是ISSUE,但它只是在刷新时对网站进行白屏显示。
最合适的回答,由SO网友:TheDeadMedic 整理而成
刚刚注意到这个问题-因为您的ACF字段是一个选项页,所以需要传递第二个参数options
到get_field
- 还要添加一些健全性检查:
$rows = get_field( \'image_advert_repeater\', \'options\' );
if ( ! empty( $rows ) && is_array( $rows ) ) {
// Your code
}