arrays - 在 Liquid 中循环遍历数组的前 3 项
问题描述
我正在创建一个网站,让您可以根据人们调查的信息浏览人们想要的礼物(除非该网站引起一些关注,否则我只会调查一小部分人 - 我不担心在网站,但这不是我要问的)。
我正在使用 Jekyll 对网站进行编码,所以我当然需要使用 Liquid。
你看,我想对site.posts
数组中的前 3 个项目进行排序。
我查看了数组过滤器文档,但似乎找不到任何可以完成我需要完成的工作。
我读了这篇文章,但我不完全确定如何理解那里的答案,因为我不知道什么是“第三循环”,而且我循环浏览帖子的方式无法很好地访问数组数据使用site.posts[0]
,site.posts[1]
等。它会使代码变得庞大,但我想如果需要的话我可以这样做。
这是我现在拥有的代码:
<h2>Recently added gifts</h2>
<div class="posts">
{% assign posts = site.posts %}
{% for post in posts %}
{% unless post.list %}
<div class="post">
<h3 class="post-title">
<a href="{{ post.url | relative_url }}">
{{ post.title }}
</a>
</h3>
<time datetime="{{ post.date | date_to_xmlschema }}" class="post-meta">{{ post.date | date_to_string }}</time>
<p class="post-excerpt">
{% if post.description %}
{{ post.description | strip_html }}
{% else %}
{{ post.excerpt | strip_html }}
{% endif %}
</p>
</div>
{% endunless %}
{% endfor %}
</div>
解决方案
正如评论中所解释的并且答案可能对其他人有所帮助,您可以在循环遍历数组时将限制设置为参数,如下所示:
{% for post in posts limit:3 %}
Do something
{% endfor %}
推荐阅读
- java - 如何将多个图像上传到 Firebase 数据库并检索
- sql-server - 没有为 RPC 配置服务器
- ag-grid - AG-Grid + Angular 6 = 兼容?
- javascript - 在 json 数组中查找 Value 并将一个 json 数组附加到 value 的父节点。(优化)
- android - 在 Android 中通过 WhatsApp 发送 PDF
- r - 从 R 列中提取字符串的变体
- javascript - Babel - 使用 transform-async-to-generator 插件时未定义 regeneratorRuntime
- c - exec* POSIX 函数中的管道
- python - 根据匹配的列标签将行值添加到数据框中
- batch-file - 批量修改代理设置不起作用