Loops

Loops

Mit Hilfe von Kontrollstrukturen kannst Du die Ausgabe abhängig machen von bestimmten Bedingungen. Man unterscheidet zwischen Verzweigungen mit if oder switch und der foreach-Schleife.

 

if-Verzweigung

Mit einer if-Verzweigung werden eine oder mehrere Bedingungen geprüft. Je nachdem, welche Bedingung als erstes ein true zurückgibt, wird dieser Zweig angezeigt und die restlichen werden ignoriert. Eine if/elseif/else-Verzweigung muss immer aus einem if-Zweig und optional beliebig viele elseif-Zweige bestehen sowie optional einem einzigen else-Zweig.

Eine Verzweigung wird mit if eingeleitet und durch /if abgeschlossen. elseif- und else-Zweige werden dagegen nicht explizit geschlossen.

Das folgende Beispiel zeigt die unterschiedlichen Anredeformen, wenn Bestandskunden im Shop angemeldet sind. Auf dem Template sei eine Variable $geschlecht definiert, die sich das entsprechende Geschlecht aus den Kundendatensätzen holt.

{{ if $geschlecht == "männlich" }} Sehr geehrter Herr {{= $customer.lastName }}, {{ elseif $geschlecht == "weiblich" }} Sehr geehrte Frau {{= $customer.lastName }}, {{ else }} Sehr geehrte Damen und Herren, {{ /if }}

switch-Verzweigung

Alternativ zu if-Verzweigungen kannst Du auch switch, case und default verwenden. Mit switch leitest Du die Verzweigung ein und gibst an, welches Feld geprüft werden soll. Hinter case schreibst Du ohne == die unterschiedlichen Werte und default entspricht else.

{{ switch $geschlecht }} {{ case "männlich" }} Sehr geehrter Herr {{= $customer.lastName }}, {{ case "weiblich" }} Sehr geehrte Frau {{= $customer.lastName }}, {{ default }} Sehr geehrte Damen und Herren, {{ /switch }}

foreach-Schleife

Eine foreach-Schleife dient dazu, Codeabschnitte mehrfach zu wiederholen (iterieren). Die Schleife wird mit foreach eingeleitet und mit /foreach geschlossen. Der umschlossene Bereich wird für jedes Element des iterierbaren Objekts einmal ausgeführt. Mit jedem Durchlauf wird das aktuelle Element des iterierbaren Objekts der sogenannten Laufvariable (im Beispiel unten $product) ohne var zugewiesen.

Im folgenden Beispiel enthält $productList eine List mit 3 Elementen. Mit jedem Durchlaufen der Schleife wird das jeweilige Element mit den HTML-Tags ausgegeben.

{{ var $productList = ["Hemd", "Bluse", "Hose"] }} {{ foreach $product in $productList }} <div> Produkt: {{= $product }}<br> </div> {{ /foreach }}

Es wird folgender HTML-Quellcode erzeugt:

<div> Produkt: Hemd<br> </div> <div> Produkt: Bluse<br> </div> <div> Produkt: Hose<br> </div>

Das Iterieren mit einer foreach-Schleife ist mit Strings, Lists und Maps möglich.

© 2025 WEBSALE AG | Impressum | Datenschutz