> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kiwify.com.br/llms.txt
> Use this file to discover all available pages before exploring further.

# Tags de iteração

> Tags de iteração permitem executar blocos de código repetidamente.

Tags de iteração permitem executar blocos de código múltiplas vezes, o que é útil para trabalhar com coleções e arrays de dados.

## `for`

Faz um loop sobre uma coleção de itens e executa um bloco de código para cada item.

```liquid theme={null}
{% for item in collection %}
  // código a executar para cada item
{% endfor %}
```

<ParamField path="item" type="string">
  O nome da variável para a qual cada item será atribuído.
</ParamField>

<ParamField path="collection" type="array">
  O array ou coleção sobre o qual iterar.
</ParamField>

<Columns cols={2}>
  <CodeGroup>
    ```liquid Código theme={null}
    {% assign fruits = "maçã,banana,laranja" | split: "," %}

    <ul>
    {% for fruit in fruits %}
      <li>{{ fruit }}</li>
    {% endfor %}
    </ul>
    ```
  </CodeGroup>

  <CodeGroup>
    ```liquid Saída theme={null}
    <ul>
      <li>maçã</li>
      <li>banana</li>
      <li>laranja</li>
    </ul>
    ```
  </CodeGroup>
</Columns>

## `else` (para loops)

Executa um bloco de código se a coleção sendo iterada estiver vazia.

```liquid theme={null}
{% for item in collection %}
  // código a executar para cada item
{% else %}
  // código a executar se a coleção estiver vazia
{% endfor %}
```

<Columns cols={2}>
  <CodeGroup>
    ```liquid Código theme={null}
    {% assign items = "" | split: "," %}

    <ul>
    {% for item in items %}
      <li>{{ item }}</li>
    {% else %}
      <li>Nenhum item encontrado</li>
    {% endfor %}
    </ul>
    ```
  </CodeGroup>

  <CodeGroup>
    ```liquid Saída theme={null}
    <ul>
      <li>Nenhum item encontrado</li>
    </ul>
    ```
  </CodeGroup>
</Columns>

## `break`

Para a execução de um loop for.

```liquid theme={null}
{% for item in collection %}
  {% if condition %}
    {% break %}
  {% endif %}
  // código a executar para cada item
{% endfor %}
```

<Columns cols={2}>
  <CodeGroup>
    ```liquid Código theme={null}
    {% assign numbers = "1,2,3,4,5" | split: "," %}

    <ul>
    {% for num in numbers %}
      {% if num == "3" %}
        {% break %}
      {% endif %}
      <li>{{ num }}</li>
    {% endfor %}
    </ul>
    ```
  </CodeGroup>

  <CodeGroup>
    ```liquid Saída theme={null}
    <ul>
      <li>1</li>
      <li>2</li>
    </ul>
    ```
  </CodeGroup>
</Columns>

## `continue`

Pula a iteração atual de um loop for.

```liquid theme={null}
{% for item in collection %}
  {% if condition %}
    {% continue %}
  {% endif %}
  // código a executar para cada item
{% endfor %}
```

<Columns cols={2}>
  <CodeGroup>
    ```liquid Código theme={null}
    {% assign numbers = "1,2,3,4,5" | split: "," %}

    <ul>
    {% for num in numbers %}
      {% if num == "3" %}
        {% continue %}
      {% endif %}
      <li>{{ num }}</li>
    {% endfor %}
    </ul>
    ```
  </CodeGroup>

  <CodeGroup>
    ```liquid Saída theme={null}
    <ul>
      <li>1</li>
      <li>2</li>
      <li>4</li>
      <li>5</li>
    </ul>
    ```
  </CodeGroup>
</Columns>

## `cycle`

Cicla através de um conjunto de valores e retorna um valor a cada vez que a tag é processada.

```liquid theme={null}
{% for item in collection %}
  {% cycle value1, value2, value3 %}
{% endfor %}
```

<Columns cols={2}>
  <CodeGroup>
    ```liquid Código theme={null}
    <table>
    {% for i in (1..4) %}
      <tr class="{% cycle 'odd', 'even' %}">
        <td>Linha {{ i }}</td>
      </tr>
    {% endfor %}
    </table>
    ```
  </CodeGroup>

  <CodeGroup>
    ```liquid Saída theme={null}
    <table>
      <tr class="odd">
        <td>Linha 1</td>
      </tr>
      <tr class="even">
        <td>Linha 2</td>
      </tr>
      <tr class="odd">
        <td>Linha 3</td>
      </tr>
      <tr class="even">
        <td>Linha 4</td>
      </tr>
    </table>
    ```
  </CodeGroup>
</Columns>

## `tablerow`

Cria uma tabela HTML com os itens da sua coleção.

```liquid theme={null}
<table>
{% tablerow item in collection cols:number %}
  // código a executar para cada item
{% endtablerow %}
</table>
```

<ParamField path="item" type="string">
  O nome da variável para a qual cada item será atribuído.
</ParamField>

<ParamField path="collection" type="array">
  O array ou coleção sobre o qual iterar.
</ParamField>

<ParamField path="cols" type="number">
  O número de colunas na tabela.
</ParamField>

<Columns cols={2}>
  <CodeGroup>
    ```liquid Código theme={null}
    {% assign items = "maçã,banana,laranja,uva,melão,kiwi" | split: "," %}

    <table>
    {% tablerow item in items cols:2 %}
      {{ item }}
    {% endtablerow %}
    </table>
    ```
  </CodeGroup>

  <CodeGroup>
    ```liquid Saída theme={null}
    <table>
      <tr>
        <td>maçã</td>
        <td>banana</td>
      </tr>
      <tr>
        <td>laranja</td>
        <td>uva</td>
      </tr>
      <tr>
        <td>melão</td>
        <td>kiwi</td>
      </tr>
    </table>
    ```
  </CodeGroup>
</Columns>
