ランダムを表示するために次のコードを使って他の人( source 1 、 source 2 、 source 3 )を見つけました。 ACFプラグイン を使用したギャラリー画像(および動作)
<?php
$gallery = get_field('images');
$Rand = array_Rand($gallery, 1);
if( $gallery ): ?>
<img src="<?php echo $gallery[$Rand]['sizes']['large']; ?>" alt="<?php echo $gallery[$Rand]['alt']; ?>" />
<?php endif; ?>
しかし、私はwp_get_attachment_image()
(レスポンシブ画像用)でそれをやろうとしていますが、$Rand
変数をどのように動かすかわからないのですか? ACF Galleryフィールドのフィールド にはwp_get_attachment_image()
を使用する 'Basic List of Images'の例がありますが、ギャラリーをループする必要はありません。
任意の助けは大歓迎です。 $Rand
変数がどこかに追加されているので、私はそれが以下のようなものでなければならないと思います:
<?php
$images = get_field('gallery');
$size = 'full'; // (thumbnail, medium, large, full or custom size)
$Rand = array_Rand($images, 1);
if( $images ): ?>
<?php echo wp_get_attachment_image( $images['ID'], $size ); ?>
<?php endif; ?>
回答は ACFフォーラム で見つかりました。 false
パラメータを追加すると、生の/未フォーマットの値が返されます。
<?php
$images = get_field('gallery', 'option', false); // Adding the `false` parameter returns raw/unformatted value
$size = 'full'; // (thumbnail, medium, large, full or custom size)
$Rand = array_Rand($images, 1);
if( $images ): ?>
<?php echo wp_get_attachment_image( $images[$Rand], $size ); ?>
<?php endif; ?>
<?php
$images = get_field('gallery');
$size = 'full'; // (thumbnail, medium, large, full or custom size)
$Rand = array_Rand($images, 1);
if( $images ): ?>
<?php echo wp_get_attachment_image( $images[$Rand]['ID'], $size ); ?>
<?php endif; ?>
このコードはうまくいくはずです。 array_Rand()
2番目のパラメータが1に設定されている場合はキーを返し、2番目のパラメータが1より大きい場合はキーを持つ配列