○1つの投稿ページのカスタムフィールドに複数の画像を登録し、ランダムに表示。
○カスタムフィールドの追加にはAdvanced Custom Fieldsを使用。
○返り値は画像ID、プレビューサイズはサムネイルに設定。
<?php
$size = 'thumbnail'; //表示する画像サイズを指定
$fields = get_fields(); //カスタムフィールドの画像を全て取得
$fields_ex = array_diff($fields, array('')); //空の配列を削除
$random = array_rand($fields_ex); //配列をランダムにする
$image = wp_get_attachment_image_src($fields[$random], $size); //選ばれし画像
if(!($random == false || $random == '')) { //画像があるかチェック
echo '<img src="'.$image[0].'" width="'.$image[1].'" height="'.$image[2].'" />';
}else {
echo '画像なんてなかったんだ';
}
?>
if文にfalseと空の2つを指定しているのは、どちらかよくわからないから。
空の時もあればなぜかfalseが返ってくることもあって、その条件がわからなかったので、両方入れておいただけ☆ だめにんげん。
もっといいやり方があるかもしれ(略)。
いいんだよ……とりあえず動けば……。