php

WordPress flickrRSSで画像をランダムに表示させる

このサイトでは、Instagramから投稿した画像を同時にFlickrにも投稿し、その画像を flickrRSS というWordPressのプラグインを使って、Flickrから呼び出して、表示させています。

デフォルトでは、RSSというだけあって、投稿日時順に表示されてしまいます。
これだと、毎回画像の並びが同じで、おもしろくないので、ランダムに表示させています。

ランダムにするには、flickrRSSのプラグインを編集します。

以下のソースの箇所で、array_sliceで取得したRSSの先頭から指定件数分を切り出しています。

[php]
# specifies number of pictures
$items = array_slice($rss->items, 0, $settings[‘num_items’]);
[/php]

これを以下のようにshuffleを追加すると、取得された件数内でランダムになります。

[php]
$items = array_slice($rss->items, 0, $settings[‘num_items’]);
shuffle($items);
[/php]

ここでやっているのは、全ての写真からランダムに表示ではなく、日付順で指定件数だけ取得したitemをランダムしてる感じです。

全部の写真の中からランダムにするには、以下のソースのように最後の引数を削除してやれば、全部取得すると思います。
取得した配列をforeachではなく、forなんかで回せば、いけるんではないでしょうか。
[php]
$items = array_slice($rss->items, 0);
[/php]