Жидкостный лимит жидкости содержит - PullRequest
0 голосов
/ 22 мая 2018

Я бы хотел ограничить количество отображаемых постов, содержащих проект макета, но это ограничивает мои посты.Если я поставлю предел: 4 после содержимого, я встречусь с:

Liquid Предупреждение: Ошибка синтаксиса жидкости (строка 50): ожидаемая строка end_of_string, но найденный канал в проекте "post.layout содержит"«| limit: 1» в /_layouts/home.html

Liquid Предупреждение: Ошибка синтаксиса Liquid (строка 56): ожидаемая строка end_of_string, но найденный идентификатор в «post.layout содержит ограничение« project »: 4 смещение: 1"в /_layouts/home.html

Надеюсь, кто-то здесь легко поймет, где я иду не так.Объяснение было бы также прекрасно.

{% for post in site.posts %} 
  {% if post.layout contains "project" | limit:1 %}
  <h1>{{post.title}}</h1>
  {% endif %}
{% endfor %}

{% for post in site.posts %}
  {% if post.layout contains "project" limit:4 offset:1 %}
  <h2>{{post.title}}</h2>
  {% endif %}
{% endfor %}

1 Ответ

0 голосов
/ 24 мая 2018

Вы можете использовать только limit и offset в цикле for.Здесь вы используете его в выражении if, поэтому вы получаете предупреждение.

Лучше всего использовать фильтр where_exp.

  {% assign project-posts = site.posts | where_exp: "post", "post.layout contains 'project'"  %}

  {% for post in project-posts limit: 1 %}
    <h1>{{post.title}}</h1>
  {% endfor %}
  {% for post in project-posts limit:4 offset:1 %}
    <h2>{{post.title}}</h2>
  {% endfor %} 
...