在帖子的最后一个Jekyll循环中添加一个元素

时间:2016-01-02 16:26:19

标签: jekyll liquid

我确信这很简单,但无法找到答案。

有一个标准的Jekyll / Liquid后迭代器。我如何使用下面的{% if %}声明为每个帖子添加<hr>元素,除了最后一个?

<ul class="post-list">
    {% for post in site.posts %}
      {% if post.url %}
      <br>
        <li>
          <h2>
            <a class="post-link" href="{{ post.url | prepend: site.baseurl }}">{{ post.title }}</a>
          </h2>
          <span class="post-meta">{{ post.date | date: "%b %-d, %Y" }}</span>
        </li>

        **** {% if post != $last %} ***** How do i do this??
          <hr>
        {% endif %}
      {% endif %}
    {% endfor %}
  </ul>

1 个答案:

答案 0 :(得分:20)

是的,这是一个简单的解决方案。

Liquid具有forloop object,可以在循环中使用它来访问它的一些属性 其中一个属性是forloop.last

  

如果它是for循环的最后一次迭代,则返回true。如果它不是最后一次迭代,则返回false

换句话说,你可以这样做:

{% if forloop.last == false %}
  <hr>
{% endif %}