首页 > 解决方案 > 如何使用 Jekyll 的 Liquid 将限制参数传递给包含

问题描述

我的网站上有一组项目,我迭代使用{% for project in site.projects %}并存储在一个名为projects-list.html.

我想在主页上包含这个集合中的最新项目作为“特色”项目——是否可以包含projects-list但传入一个limit:1参数以便只显示第一个项目?根据此处找到的 Jekyll 文档,我尝试将参数传递给包含,如下所示:

{% for project in site.projects limit:{{ include.limit }} %}

并像这样引用包含:

{% include projects-list.html limit=1 %}

但这似乎不起作用。这是语法错误还是我遗漏了什么?

标签: for-loopincludejekyllliquid

解决方案


你可以试试第一个

{% assign projectFeatured = site.projects | first %}

{% for projects in site.projects %} 
  {% include projects-list.html %} 
{% endfor %}

{% for projects in projectFeatured %}
 {% include projects-list.html %}
{% endfor %}

尽管我鼓励您featured: True在帖子中添加一个并执行以下操作:

{% if post.featured == true %}

 {% include post.html %}

 {% endif %}

https://shopify.github.io/liquid/filters/first/


推荐阅读