Erweitert- Mit For-Schleifen einen Block mit Artikeln wiederholen

In diesem Artikel erklären wir Ihnen, wie Sie manuell einen Artikelblock wiederholen, der sich automatisch wiederholt und über alle Artikel in einer einzigen Variable iteriert.

Wiederholen Sie einen Block in:

  • einer E-Mail mit einem Beleg , um alle Artikel anzuzeigen, die Ihr Kunde gekauft hat,
  • einer Warenkorbabbruch-E-Mail, um alle Artikel anzuzeigen, die ein Kunde in seinem Warenkorb liegengelassen hat,
  • einer RSS-Kampagne, um automatisch eine Reihe von Blog-Artikeln anzuzeigen,
  • usw.

Gut zu wissen

Was ist eine For-Schleife?

Sie haben zwei Optionen, um einen Block zu wiederholen:

  1. Verwenden Sie die Funktion "Block wiederholen", die in beiden Drag & Drop Editoren verfügbar ist.
  2. (Fortgeschritten) Fügen Sie mit dem For-Tag manuell For-Schleifen zu Ihren E-Mails hinzu.

Das For-Tag ermöglicht es Ihnen, über jedes Element in einer Liste zu iterieren. Dies ist vor allem nützlich, wenn die Zahl der Artikel in einer Liste bei der Erstellung eines E-Mail Templates unbekannt ist. 

In Kombination mit Ihren Transaktionsparametern ermöglicht Ihnen das For-Tag, ganz einfach eine dynamische Liste Ihrer Artikel in Ihre E-Mails einzufügen. Diese For-Schleifen werden strukturiert, indem das For-Tag, um Ihre Transaktionsparameter-Platzhalter angeordnet wird:

{% for VARIABLE in params.PARAMETERNAME %}
{{ VARIABLE.name }} - {{ VARIABLE.price }}
{% endfor %}

Wenn Sie Ihre Website über eines unserer Plug-ins mit Sendinblue verbunden haben, lauten Ihre Standard-Variablen- und Parameter-Namen:

  • variable: item
  • parameter: items

Wenn Sie kein Sendinblue-Plug-in  oder andere Transaktionsparameter verwenden, finden Sie Ihre Variablen- und Parameternamen in Ihren Event-Logs. In unserem Artikel Ihre E-Mails mit Transaktionsparametern anpassen, erfahren Sie, wo Sie diese Daten finden.

Wie sind For-Schleifen strukturiert?

Eine For-Schleife wird mit dem for-Tag erstellt, das es Ihnen ermöglicht, über jeden Artikel in einer Sequenz zu iterieren. Dies ist besonders hilfreich, wenn die Zahl der Artikel in der Sequenz bei der Erstellung eines E-Mail-Templates unbekannt ist, zum Beispiel in einer dynamischen Liste.

Einfache For-Schleife

Hier sind ein paar gängige Anwendungsbeispiele für das for-Tag:

for, in

eine Liste anzeigen

<ul>
   {% for user in params.USERS %}
       <li>{{ user.username }}</li>
   {% endfor %}
</ul>

else

einen Ersatz-Block anzeigen, wenn Ihre Sequenz leer ist

<ul>
   {% for user in params.USERS %}
       <li>{{ user.username }}</li>
   {% else %}
       <li><em>no user found</em></li>
   {% endfor %}
</ul>

Würde "kein Benutzer gefunden" anzeigen.

reversed

kehrt die Druckreihenfolge der Artikel in Ihrer Sequenz um

{% for country in params.countries reversed %} {% end for %}

Würde eine Liste von Ländern anzeigen, aber in umgekehrter Reihenfolge im Vergleich zur Originalliste.

 

Erweiterte For-Schleife

💡 Gut zu wissen
Bei Namen von Schleifen-Variablen muss die Groß- und Kleinschreibung beachtet werden.

Im Block einer For-Schleife können Sie auch auf diese speziellen Variablen zugreifen:

forloop.Counter

Immer auf eine ganze Zahl eingestellt, die anzeigt, wie oft die Schleife betreten wurde. 1-indiziert, der For-Schleifen-Zähler steht beim ersten Durchlauf durch die Schleife auf 1.

Kann einfach verwendet werden, um Artikel in einer Schleife zu nummerieren:

{% for product in params.products %}
{{ forloop.Counter }}. {{ product.name }} {% endfor %}

gibt eine Liste wie diese aus:

1. Produkt a
2. Produkt b
3. Produkt c usw.

forloop.Counter0

Die aktuelle Iteration der Schleife. (0-indiziert)

forloop.Revcounter

Immer auf eine ganze Zahl eingestellt, die die Zahl der verbleibenden Artikel in der Schleife anzeigt. Beim ersten Durchlauf durch die Schleife zeigt forloop.Revcounter die Gesamtzahl der Artikel in der Sequenz an, die Sie durchlaufen. Beim letzten Durchlauf durch die Schleife steht der forloop.revcounter auf 1.

forloop.Revcounter0

Anzahl der Iterationen vom Ende der Schleife (0 indiziert)

forloop.First

Boolescher Wert ist auf "Wahr" eingestellt, wenn dies der erste Durchlauf durch die Schleife ist.

Dies ist hilfreich, wenn der erste Artikel in einer Liste eine besondere Schreibweise hat, beispielsweise wenn der Filter "upper" (in nachstehendem Abschnitt "Filter" beschrieben) nur zum ersten Artikel in dieser Beispiel-Artikelliste hinzugefügt wird.

{% for product in params.products %}
{{ forloop.Counter }}. {% if forloop.First %} {{ product.name|upper }} {% else %} {{ product.name }} {% endif %} - {{ product.price }}
{% endfor %}

Gibt eine Artikelliste wie diese aus:

1. ERSTER ARTIKEL - $5.00
2. Zweiter Artikel - $2.00
3. Dritter Artikel - $4.00

forloop.Last

Boolescher Wert ist auf "Wahr" eingestellt, wenn dies der letzte Durchlauf durch die Schleife ist. Wird häufig verwendet, um Trennzeichen (wie , oder |) in eine Artikelliste einzufügen.

forloop.Parentloop

Referenziert bei verschachtelten Schleifen das Forloop-Objekt für die übergeordnete Schleife.

Beispiel:

{% for country in countries %}
<table>
{% for city in country.city_list %}
<tr>
<td>Country #{{ forloop.Parentloop.counter }}</td>
<td>City #{{ forloop.Counter }}</td>
<td>{{ city }}</td>
</tr>
{% endfor %}
</table>
{% endfor %}

 

 

Eine For-Schleife in eine E-Mail einfügen

Geben Sie die For-Schleife in Ihrem E-Mail-Template um Ihre Platzhalter ein ({{ item.name }} - {{ item.price }} im Beispiel unten).







{% for item in params.items %}
{{ item.name }} - {{ item.price }}
{% endfor %}




mceclip5.png

So könnte Ihre E-Mail aussehen, wenn Sie die Daten eines Empfängers eingegeben haben, der 4 Artikel gekauft hat: 

mceclip4.png