Wie in dem vorherigen, einfachem Beipiel beschrieben benötigt eine Vorlage eine spezielle Schleifenvariable. Der Name IMAGELOOP ist hier nicht fest vorgegeben, wichtig ist aber, dass in den Parametern loop="1" aufgeführt wird. Es kann in einer theme.xml durchaus auch mehrere Schleifen variablen geben, z.b. eine um ein JavaScript zu ergänzen und eine für die HTML Datei.
Der Name darf aber nur die Buchstaben A-Z enthalten und maximal 30 Zeichen lang sein. Dies wurde so festgelegt, um Vorlagen Variablen (also z.b. <!--%IMAGELOOP%-->) sicherer in den Quelldateien zu erkennen.
Diese werden in dem Inhalt der speziellen tags verwendet.
Folgende Inline-Variablen werden unterstützt:
%IMG% für das Bild thumbnail
%IMGMINI% for eine kleine 150*150 pixel Vorschau
%IMAGE% die eigentliche Bild Datei
%MASTER% die unbearbeitete Datei als Anhang
%IMGYYYY% Aufnahmejahr des Bildes
%$NAME% andere, selbst definierte Variablen - nur wenn parameter checkvar="1"
%LINKMASTER% erstellt einen vollständigen Link zur Originaldatei - wenn mit INCMASTER aktiviert und mit einer registrierten Version von fotoARRAY verwendet
%LINKJPEG% erstellt einen vollständigen Link zur einer grossen JPEG Datei - wenn mit INCJPEG aktiviert und mit einer registrierten Version von fotoARRAY verwendet
loop="1" "1" ist erforderlich, damit die Variable als Schleife verwendet wird
edit="0" "0" ist erforderlich, damit sie nicht als Eingabe Feld angezeigt wird
visible="0" "0" ist erforderlich, damit sie nicht im Dialog angezeigt wird
checkvar "1" optional - erlaubt dann variablen als Inline-Variablen zu verwenden (mit %$...% )
maxcount maximale Anzahl der Durchläufe
groups= $ROWCOUNT,$COLCOUNT optional um eine Schachtelung von 2 Gruppen zu erzeugen
<title> </title> Dieser Text wird in dem fotoARRAY dialog angezeigt, bei Schleifenvariablen nicht erforderlich
<title lang="Deutsch"> </title> Dieser Text wird in dem fotoARRAY dialog angezeigt wenn die Sprache auf "Deutsch" geschaltet wurde.
<default encode="0">....</default> Der Inhalt der Schleife, mit Inline-Variablen
<start>....</start> Ausgabe vor der Schleife
<next>....</next> Ausgabe zwischen den Durchläufen
<end>....</end> Ausgabe nach der Schleife
Im Falle dass groups=... verwendet wurde, wird start/next/end ignoriert und stattdessen dies verwendet. Die nummer der Gruppe (0...) wird dabei explizit angegeben.
<groupstart group="0">...</groupstart>
<groupend group="0"></groupend>
Dieses Beispiel erzeugt eine Ausgabe gruppiert nach Jahren.
Es verwendet die Variablen ROWCOUNT und COLCOUNT sowie BGCOLOR die auch im theme.xml definiert sein müssen.
Der Inhalt von <default> ist entscheidend abhängig von dem StyleSheet welches für die Vorlage verwendet wird.
In jedem Fall müssen aber die Zeichen < und > als $lt; sowie > kodiert sein. Bilder werden wie beschrieben über %IMG% etc eingebunden.