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

Dav*_*ton 14 liquid jekyll

我确信这很简单,但找不到答案.

有一个标准的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>
Run Code Online (Sandbox Code Playgroud)

Chr*_*cht 23

是的,有一个简单的解决方案.

Liquid具有forloop对象,可以在循环内部使用以访问其某些属性.
其中一个属性是forloop.last:

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

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

{% if forloop.last == false %}
  <hr>
{% endif %}
Run Code Online (Sandbox Code Playgroud)