Iterationstaggar
Iterationstaggar används för att köra/återge ett kodblock upprepade gånger.
för
Kör ett kodblock upprepade gånger. Det används mest för att iterera över objekten i en matris eller en ordlista.
Inom taggbloket är forloop-objekt tillgängligt.
Code
{% for child_page in page.children %}
<a href={{ child_page.url }}>{{ child_page.title }}</a>
{% endfor %}
Utdata
<a href=/parent/child1/>Child 1</a>
<a href=/parent/child2/>Child 2</a>
<a href=/parent/child3/>Child 3</a>
Parameters
Dessa "för"-parametrar kan användas separat eller kombinerade.
gräns
Avslutar loopen efter ett givet antal objekt.
Code
{% for child_page in page.children limit:2 %}
<a href={{ child_page.url }}>{{ child_page.title }}</a>
{% endfor %}
Output
<a href=/parent/child1/>Child 1</a>
<a href=/parent/child2/>Child 2</a>
förskjutning
Startar loop vid angivet index.
Code
{% for child_page in page.children offset:1 %}
<a href={{ child_page.url }}>{{ child_page.title }}</a>
{% endfor %}
Output
<a href=/parent/child2/>Child 2</a>
<a href=/parent/child3/>Child 3</a>
intervall
Definierar ett intervall med nummer att gå igenom.
Code
{% assign n = 4 %}
{% for i in (2..n) %}
{{ i }}
{% endfor %}
{% for i in (10..14) %}
{{ i }}
{% endfor }}
Utgående
2 3 4
10 11 12 14
återförda
Går igenom loopen i omvänd ordning från den sista posten.
Code
{% for child_page in page.children reversed %}
<a href={{ child_page.url }}>{{ child_page.title }}</a>
{% endfor %}
Output
<a href=/parent/child3/>Child 3</a>
<a href=/parent/child2/>Child 2</a>
<a href=/parent/child1/>Child 1</a>
cykel
Går genom en grupp av strängar och matar ut dem i den ordning som de skickades som parametrar. Varje gång en cykel kallas, kommer nästa sträng som skickades som en parameter att vara utdata.
Code
{% for item in items %}
<div class={% cycle 'red', 'green', 'blue' %}> {{ item }} </div>
{% end %}
Output
<div class=red> Item one </div>
<div class=green> Item two </div>
<div class=blue> Item three </div>
<div class=red> Item four </div>
<div class=green> Item five</div>
tabellrad
Skapar en HTML-tabell. Måste omges av inledande <tabell>- och avslutande </table>-HTML-taggar.
Inom taggblocket för tabellrad finns tablerowloop tillgänglig.
Code
<table>
{% tablerow child_page in page.children %}
{{ child_page.title }}
{% endtablerow %}
</table>
Output
<table>
<tr class=row1>
<td class=col1>
Child Page 1
</td>
<td class=col2>
Child Page 2
</td>
<td class=col3>
Child Page 3
</td>
<td class=col4>
Child Page 4
</td>
</tr>
</table>
Parameters
Dessa parametrar för tabellrad kan användas separat eller i kombination.
Output
<table>
<tr class=row1>
<td class=col1>
Child Page 1
</td>
<td class=col2>
Child Page 2
</td>
</tr>
<tr class=row2>
<td class=col3>
Child Page 3
</td>
<td class=col4>
Child Page 4
</td>
</tr>
</table>
Code
<table>
{% tablerow child_page in page.children cols:2 %}
{{ child_page.title }}
{% endtablerow %}
</table>
Avgör hur många rader som den genererade tabellen ska ha.
kolumner
gräns
Avslutar loopen efter ett givet antal objekt.
Code
<table>
{% tablerow child_page in page.children limit:2 %}
{{ child_page.title }}
{% endtablerow %}
</table>
Output
<table>
<tr class=row1>
<td class=col1>
Child Page 1
</td>
<td class=col2>
Child Page 2
</td>
</tr>
</table>
offset
Startar loop vid angivet index.
Code
<table>
{% tablerow child_page in page.children offset:2 %}
{{ child_page.title }}
{% endtablerow %}
</table>
Utdata
<table>
<tr class=row1>
<td class=col1>
Child Page 3
</td>
<td class=col2>
Child Page 4
</td>
</tr>
</table>
intervall
Definierar ett intervall med nummer att gå igenom.
Code
<table>
{% tablerow i in (1..3) %}
{{ i }}
{% endtablerow %}
</table>