Als je de items in een willekeurige volgorde wilt laten zien, hebben sommige modules een parameter beschikbaar die je kunt instellen. Echter, als een module zo'n "randomize" parameter niet kent, is er ook een andere eenvoudige manier om dit te bereiken met slechts één regeltje Smarty code.
Laten we eens kijken naar de News module
In het samenvattingssjabloon vind je de Smarty array variabele $items, welke alle nieuws-items bevat. Je kunt er ook de regel {foreach from=$items item=entry} herkennen, welke ervoor zorgt om de $items array te doorlopen.
Om de nieuwsitems in een willekeurige volgorde te tonen hoef je alleen de volgende code net vóór de {foreach from=$items item=entry} statement in te voegen:
Code: Select all
{capture}{$items|@shuffle}{/capture}
Ander voorbeeld: Gallery
De Gallery module kent de parameter action='showrandom', maar als je alleen maar de afbeeldingen in de gekozen subgalerij wil husselen, dan kun je de volgende code
Code: Select all
{capture}{$images|@shuffle}{/capture}
Je kunt deze methode in elke template van elke module gebruiken waar je een array-variabele ziet in een {foreach} of {section} tag.