你能在Jekyll中迭代一个前端集合变量吗?

时间:2017-06-30 04:31:45

标签: jekyll liquid yaml-front-matter

我正在试图看看是否可以在Jekyll中迭代一个变量来获取我正在为Jekyll网站实现的推荐块。基本上,我想要一个图标乘以我的收藏中指定的数字。液体降价甚至可以实现这一点吗?这是一个片段:

{% assign star = "<i class="icon-star"></i>" %}
{% assign star = star | times:{{ testimonials.stars }} %}

我认为有更好的方法可以做到这一点,但我很好奇我可以通过前面的事情逃脱。

2 个答案:

答案 0 :(得分:2)

要进行迭代,您可以使用for循环将所需的字符串附加到变量:

{% assign star = '<i class="icon-star"></i>' %}
{% assign result = '' %}
{% for time in testimonials.stars %}
 {% assign result = result | append: star%}
{% endfor %}

答案 1 :(得分:1)

关键是使用for块。您不必编写多个assign语句。

以下内容将使用代码为任何页面中的前端问题键star呈现rating
根据需要修改for bock。

{% assign star = '<i class="icon-star"></i>' %}
<div class="rating">
  {% for count in (1..page.rating)) %}
    {{ star }}
  {% endfor %}
</div>

参考:docs