【问题标题】:Jekyll For Loop QuestionsJekyll For 循环问题
【发布时间】:2017-07-04 12:27:58
【问题描述】:

所以我想在 Jekyll 中设置一个 for 循环,它只显示集合中的最新事件/项目。 (按日期组织)

目前,除了按重量对日期进行排序并在集合中循环使用一个限制之外,这并没有多大作用。

    {% assign sorted_events = site.events | sort: "date" %}
    {% for event in sorted_events limit:1 %}
    <section class="venue-info wow fadeIn" data-wow-duration="1.2s" id="about">
        <div class="upcoming-event">
          <h1>Our Next Event</h1>
        <h2>{{ event.title }}</h2>
        <p>{{ event.description }}</p>
        <a class="btn scroll" href="{{ event.url }}">Learn More</a>
        </div>
    {% endfor %}

【问题讨论】:

  • 问题是什么?
  • 我如何按日期组织它,它在问题中说明。
  • 您的日期是如何定义的?以集合中的一个项目为例会有所帮助。
  • 在前面列出为---标题:示例日期:2017-01-17---内容

标签: jekyll liquid static-site


【解决方案1】:

本例以{{site.post}}为集合,对帖子集合进行排序,然后使用last标签获取数组的最后一个元素。

  • 要获得最新的帖子:

    {% assign newest = site.posts | sort: "date" | last  %}
    
    {{newest.title}}
    {{newest.date}}
    
  • 最早的帖子:

    {% assign oldest = site.posts | sort: "date" | first  %}
    
    {{oldest.title}}
    {{oldest.date}}
    

它应该适用于您的代码所指的任何其他集合,例如 site.events

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-05
    • 1970-01-01
    • 1970-01-01
    • 2014-03-19
    • 2020-09-15
    相关资源
    最近更新 更多