tutorial lenguaje language generate jekyll liquid

jekyll - lenguaje - Para bucles en líquido: uso invertido junto con límite: 1



liquid shopify io (2)

¿Qué está produciendo Jekyll en realidad para ti?

Por lo que entiendo, el filtro invertido se aplica en último lugar. Así que asumamos que publicaste los primeros 15 días de agosto, y también digamos que haces algo como esto:

{% for post in site.posts limit:5 %} {{ post.content }} {% endfor %}

Tu post array se ordenaría en el siguiente patrón

[15 de agosto, 14 de agosto, 13 de agosto, 12 de agosto, 11 de agosto]

Y luego si lo inviertes

{% for post in site.posts reversed limit:5 %} {{ post.content }} {% endfor %}

Tu post array se ordenaría en el siguiente patrón

[11 de agosto, 12 de agosto, 13 de agosto, 14 de agosto, 15 de agosto]

Con todo lo dicho, estoy un poco perplejo en cuanto a por qué no estás usando

{% for post in site.posts limit:1 %}

Estoy creando un blog simple con Jekyll, y me estoy sacando el pelo tratando de resolver este problema.

La página de índice del sitio está destinada a presentar un artículo único y más reciente, con la estructura parecida a la siguiente (perdón por el desastre):

{% for post in site.posts reversed limit:1 %} <div class="post"> <div class="post-inner"> <h3 class="posttitle"><a href="{{ post.url }}">{{ post.title }}</a></h3> <p class="postdate">{{ post.date | date: "%d %B %Y" }}</p> {{ post.content }} <a href="{{ post.url }}#disqus_thread" class="commentLink"></a> </div> </div> {% endfor %}

La plantilla anterior funciona perfectamente bien cuando el límite no es restrictivo (es decir, no existe o se establece en la longitud de la matriz). Parece ser que solo cuando el límite restringe realmente el resultado que el bucle ignora se invierte.

He intentado borrar el caché del navegador, que es lo que lo hizo funcionar sin límite: 1, pero el progreso termina allí.

Gracias por la ayuda, y me complacería brindarle más detalles si esto no fuera suficiente.


Hack para tener ordenación inversa personalizada por campo personalizado con límite:

{% assign items = site.items | sort: ''some_field'' | reverse %} {% for item in items limit:10 %} <li><a href="{{ item.url }}">{{ item.title }}</a></li> {% endfor %}

Es importante asignar a alguna var personalizada, ordenar (y revertir) allí y solo luego hacer un bucle con límite.