Iteration tags

Iteration tags

Iteration tags repeatedly run blocks of code.



for

Mit dem Befehl for können Sie mit einer Schleife mehrere Datensätze in einem Datenobjekt abarbeiten.

{% for item in array %}
{% endfor %}
array = [1,2,3,4,5,6]
{% for item in array %}
{{ item }}
{% endfor %}
123456

Weitere Hinweise:
In jedem Schritt der Schleife stehen Ihnen folgende Informationen zur Verfügung (das kann zum Beispiel für besondere Gestaltungsmerkmale genutzt werden):

forloop.length

Gibt die Anzahl der Iterationen der Schleife zurück.

<!-- if collections.frontpage.products contains 4 products -->
{% for product in collections.frontpage.products %}
  {% if forloop.first %}
  <p>This collection has {{ forloop.length }} products:</p>
  {% endif %}
  <p>{{ product.title }}</p>
{% endfor %}
This collection has 4 products:
Apple
Orange
Peach
Plum

forloop.index

Gibt den aktuellen Index der for-Schleife zurück, beginnend bei 1.

{% for product in collections.frontpage.products %}
   {{ forloop.index }}
{% else %}
    // no products in your frontpage collection
{% endfor %}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

forloop.index0

Gibt den aktuellen Index der for-Schleife zurück, beginnend bei 0.

{% for product in collections.frontpage.products %}
  {{ forloop.index0 }}
{% endfor %}
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

forloop.rindex

Gibt forloop.index in umgekehrter Reihenfolge zurück.

{% for product in collections.frontpage.products %}
    {{ forloop.rindex }}
{% endfor %}
16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1

forloop.rindex0

Gibt forloop.index0 in umgekehrter Reihenfolge zurück.

{% for product in collections.frontpage.products %}
   {{ forloop.rindex0 }}
{% endfor %}
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

forloop.first

Gibt true zurück, wenn dies die erste Iteration der for-Schleife ist. Gibt false zurück, wenn es nicht die erste Iteration ist.

{% for product in collections.frontpage.products %}
    {% if forloop.first == true %}
        First time through!
    {% else %}
        Not the first time.
    {% endif %}
{% endfor %}
First time through!
Not the first time.
Not the first time.
Not the first time.
Not the first time.

forloop.last

Gibt true zurück, wenn dies die letzte Iteration der for-Schleife ist. Gibt false zurück, wenn es nicht die letzte Iteration ist

{% for product in collections.frontpage.products %}
    {% if forloop.last == true %}
        This is the last iteration!
    {% else %}
        Keep going...
    {% endif %}
{% endfor %}
Keep going...
Keep going...
Keep going...
Keep going...
Keep going...
This is the last iteration!

Es gibt einige Attribute, mit denen Sie beinflussen können, welche Elemente in der Schleife zur Verfügung stehen. Mit limit begrenzen Sie die Anzahl der Elemente. Und mit offset können sie definieren, mit welchem Element Sie anfangen.

array = [1,2,3,4,5,6]
{% for item in array limit:2 offset:2 %}
{{ item }}
{% endfor %}
34

Anstatt alle Datensätze zu durchlaufen, können Sie auch einen Bereich definieren, den Sie durchlaufen möchten. Sie können den Bereich mit Ziffern oder Variablen definieren.

item.quantity = 4
{% for i in (1..item.quantity) %}
{{ item }}
{% endfor %}
1234

Sie können die Werte innerhalb der For-Schleife auch in umgekehrter Reihenfolge ausgeben lassen:

{% for i in array reversed %}
{{ item }}
{% endfor %}
654321


cycle

Mit dem Befehl cycle können Sie In Schleifendurchläufen bei jedem Durchlauf einen Wert Ihrer Wahl ausgeben. Zum Beispiel, wenn Sie Farben abwechselnd darstellen möchten.

{{ cycle (Gruppe): Wert1 Wert2 Wert3 }}
{% cycle 'rot', 'gelb', 'grün' %}
{% cycle 'rot', 'gelb', 'grün' %}
{% cycle 'rot', 'gelb', 'grün' %}
{% cycle 'rot', 'gelb', 'grün' %}
rot
gelb
grün
rot

Wenn Sie mehr Kontrolle haben möchten, können Sie einen Namen für die „abwechselnde“ Gruppe vergeben:

{% cycle 'gruppe 1': 'Eins', 'Zwei', 'Drei' %}
{% cycle 'gruppe 1': 'Eins', 'Zwei', 'Drei' %}
{% cycle 'gruppe 2': 'Eins', 'Zwei', 'Drei' %}
{% cycle 'gruppe 2': 'Eins', 'Zwei', 'Drei' %}
Eins
Zwei
Eins
Zwei


tablerow

Erzeugt Zeilen für eine HTML-Tabelle. Muss in öffnende HTML-Tags table und schließende /table eingeschlossen werden. Eine vollständige Liste der Attribute, die in einer Tablerow-Schleife verfügbar sind.

<table>
  {% tablerow product in collection.products %}
    {{ product.title }}
  {% endtablerow %}
</table>
<table>
  <tr class="row1">
    <td class="col1">
      Cool Shirt
    </td>
    <td class="col2">
      Alien Poster
    </td>
    <td class="col3">
      Batman Poster
    </td>
    <td class="col4">
      Bullseye Shirt
    </td>
    <td class="col5">
      Another Classic Vinyl
    </td>
    <td class="col6">
      Awesome Jeans
    </td>
  </tr>
</table>

tablerow tag parameters

cols Legt fest, wie viele Spalten die Tabellen haben sollen.

<table>
  {% tablerow product in collection.products cols:2 %}
    {{ product.title }}
  {% endtablerow %}
</table>
<table>
  <tr class="row1">
    <td class="col1">
      Cool Shirt
    </td>
    <td class="col2">
      Alien Poster
    </td>
  </tr>
  <tr class="row2">
    <td class="col1">
      Batman Poster
    </td>
    <td class="col2">
      Bullseye Shirt
    </td>
  </tr>
  <tr class="row3">
    <td class="col1">
      Another Classic Vinyl
    </td>
    <td class="col2">
      Awesome Jeans
    </td>
  </tr>
</table>

limit

Beendet die Tablerow-Schleife nach einem bestimmten Index.

{% tablerow product in collection.products cols:2 limit:3 %}
  {{ product.title }}
{% endtablerow %}

offset

Startet die Tablerow-Schleife an einem bestimmten Index.

{% tablerow product in collection.products cols:2 offset:3 %}
  {{ product.title }}
{% endtablerow %}

range

Definiert einen Zahlenbereich zum Durchlaufen. Der Bereich kann durch Literal- und Variablennummern definiert werden.

<table>
  {% tablerow i in (3..5) %}
    {{ i }}
  {% endtablerow %}
</table>

{% assign num = 4 %}
<table>
  {% tablerow i in (1..num) %}
    {{ i }}
  {% endtablerow %}
</table>


    • Related Articles

    • Tags

      Schlagwortliste eines Produktes ausgeben: <ul> {% for tag in product.tags %} <li>{{ tag.name }}</li> {% endfor %} </ul> Schlagwortliste eine Produktes ausgeben und auf das Schlagwort verlinken mit Hilfe des Filters link_to_tag: <ul> {% for tag in ...
    • Variable tags

      Sie können variable Tags verwenden, um neue Liquid-Variablen zu erstellen. capture Mit diesem „Block“-orientierten Befehl „schneiden“ sie alles mit, was innerhalb seines Start- und Ende-Elementes erzeugt wird. Anstatt diese erzeugten Daten ...
    • Theme tags

      Theme-Tags haben viele Funktionen, darunter: Gibt HTML-Tags für die Vorlage aus. Dem Theme mitteilen, welches Layout und welche Snippets verwendet werden sollen. Teilen eines zurückgegebenen Arrays in mehrere Seiten. comment Text innerhalb der ...
    • Tag

      Filter zum manipulieren von Schlagworten und Schlagwortlisten. Hinweis Viele dieser Filter funktionieren nur auf einer collection-Seiten. {% assign tags = "rot,grün,blau"|split %} <ul> {% filter collection by each of tags %} <li{% if ...
    • Array

      Array-Filter ändern die Ausgabe von Arrays. join Verbindet die Elemente eines Arrays mit dem als Parameter übergebenen Zeichen. Das Ergebnis ist eine einzelne Zeichenfolge. Syntax: array | join (delimiter) {{ product.tags | join: ', ' }} holz, ...