WordPress + ACF图库随机数组图片大小。

问题描述 投票:0回答:1

我正在用ACF和Isotope Masonry建立一个图片库,但我想让图片以不同的尺寸随机显示。

我使用的是当前的代码,但不太行得通,有谁能给我指出正确的方向,请问是哪里出了问题?

 <?php 
$images = get_sub_field('gallery');
$size = array("gallery-large","gallery-medium","gallery-small"); // (thumbnail, medium, large, full or custom size)
$rand = array_rand($size, 1);

if( $images ): ?>
    <div class="gallery grid">

        <?php foreach( $images as $image_id ): ?>
  <div class="grid-item">
                <?php echo wp_get_attachment_image( $image_id, $rand ); ?>
            </div>
        <?php endforeach; ?>
    </div>
<?php endif; ?>

谢谢CBroe,我已经更新到下面的代码了,但还是不行,这样做对吗?

<?php 
$images = get_sub_field('gallery');

if( $images ): ?>
    <div class="gallery grid">

    <?php foreach( $images as $image_id ):
    $size = array("gallery-large","gallery-medium","gallery-small");
    $rand = array_rand($size, 1); ?>

        <div class="grid-item">
            <?php echo wp_get_attachment_image( $image_id, $rand ); ?>
        </div>

        <?php endforeach; ?>
    </div>
<?php endif; ?>
php wordpress advanced-custom-fields
1个回答
1
投票

你得到的是key,但你传递的是key,而不是传递key的值。我已经更新了你的代码,请检查。

<?php 
$images = get_sub_field('gallery');

if( $images ): ?>
    <div class="gallery grid">

    <?php foreach( $images as $image_id ):
    $size = array("gallery-large","gallery-medium","gallery-small");
    $rand = array_rand($size, 1); ?>

    <div class="grid-item">
        <?php echo wp_get_attachment_image( $image_id, $size[$rand] ); ?>
    </div>

    <?php endforeach; ?>
</div>
<?php endif; ?>
© www.soinside.com 2019 - 2024. All rights reserved.