2016-12-29 2 views
1

Это может быть чрезвычайно очевидно, но я делаю блог Jekyll с нуля, и я использую Shopify's Liquid.Возьмите 3 сообщения за раз в Liquid (Jekyll)

Скажем, у меня есть коллекция сообщений:

post1, post2, post3, post4, post5, post6, post7, post8, post9, post10 

Я пытаюсь сделать три сообщения в то время, в <div>. Таким образом, это выглядело бы примерно так:

<div> 
    post1 
    post2 
    post3 
</div> 
<div> 
    post4 
    post5 
    post6 
</div> 
<div> 
    post7 
    post8 
    post9 
</div> 
<div> 
    post10 
</div> 

Как бы это сделать в жидкости? Кажется, что-то вроде ruby's splice, но я не мог найти, как это сделать в Liquid.

ответ

1
{% for p in site.posts %} 
    {% assign counter = forloop.index | modulo:3 %} 
    {% if counter == 1 %}<div>{% endif %} 
    <h3>{{ p.title }}</h3> 
    {% if forloop.last or counter == 0 %}</div>{% endif %} 
{% endfor %} 
Смежные вопросы