Block Designer Pro や画像スライダーのリピートアイテムをランダム表示する。
concrete5 でオリジナルのリピート要素なブロックを作れる Block Designer Pro.
時々、スライドショーなどで、順番通りじゃなくて、ランダムに表示させたい時があるので、その時の技。
view.php にリピートアイテム (例では $slideshow_items )の情報が格納されている array をシャッフルするコードを書きます。ただ、単に shuffle() を使うと、キーがめちゃくちゃになるので、キーだけを取り出して、その順番だけをシャッフルして、他の情報は追従するようにします。
注) $slideshow_items の「$slideshow」の部分は、自分が決めた repeatable のハンドルが使われるので、適宜変更してください。
$slideshow_item_keys = array_keys($slideshow_items);
shuffle($slideshow_item_keys);
foreach($slideshow_item_keys as $key){
$slideshow_random_items[$key] = $slideshow_items[$key];
}
あとは view.php の foreach を $slideshow_items から $slideshow_random_items に変更すれば OK
というか、Ramon に機能追加要望を出したので、将来の Block Designer Pro にはオプションで登場するかも。
Author And Source
この問題について(Block Designer Pro や画像スライダーのリピートアイテムをランダム表示する。), 我々は、より多くの情報をここで見つけました https://qiita.com/katzueno/items/d283259a8007de86367f著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .