jekyll - todos - numeros impares en java con while
Plantillas líquidas: elementos pares/impares en bucle for (2)
Si tengo un bucle for en Liquid (usando Jekyll), ¿cómo puedo orientar solo elementos pares (o impares)? Yo he tratado:
{% for item in site.posts %}
{% if forloop.index % 2 == 1 %}
pero eso no parece funcionar. También he intentado:
(forloop.index % 2) == 1
y:
forloop.index - (forloop.index / 2 * 2) == 1
A diferencia de lo que dice el hilo de soporte de Shopify en la respuesta de Ales Lande , hay una función de modulo
en Líquido: en forma de filtro de modulo
.
Con eso, puedes hacer esto:
{% for item in site.posts %}
{% assign mod = forloop.index | modulo: 2 %}
{% if mod == 0 %}
<!-- even -->
{% else %}
<!-- odd -->
{% endif %}
{% endfor %}
Creo que querrás usar la etiqueta del ciclo para esto. Por ejemplo:
{% for post in site.categories.articles %}
<article class="{% cycle ''odd'', ''even'' %}"></article>
{% endfor %}
Si desea diferentes marcas de HTML para cada ciclo:
{% for item in site.posts %}
{% capture thecycle %}{% cycle ''odd'', ''even'' %}{% endcapture %}
{% if thecycle == ''odd'' %}
<div>echo something</div>
{% endif %}
{% endfor %}
Puede encontrar más información en Liquid for Designers , aunque el ejemplo allí no es particularmente útil. Este hilo de soporte de Shopify también debería ayudar.