Jekyll,如何按日期显示文件夹中的图像?
Jekyll, how to display images in a folder by date?
我正在创建一个网站画廊。有这样一个结构:
my site
artworks
caty1
caty2
需要按创建日期在给定类别(caty2
或 caty1
)的页面中显示照片。
其实,如何使用Jekyll和Liqiud来实现呢?
或者是否有更合适的结构?
使用 liquid 你可以 filter/sort 一个数组,但它的任何元素属性都是你想要的。
在您的情况下,您需要创建 datafile(在 yml、csv 或 json) 代表一组照片,每张照片应该有一个 date
属性(连同名称、src、...)。
然后在生成 caty
页面的 layout
中,您将看到类似的内容:
{% assign sorted-photos = site.data.photos | sort: 'date' %}
<ul> <!-- list of sorted photos -->
{% for photo in photos %}
<li> <img src={{photo.src}} alt={{photo.name}}></li>
{% endfor %}
</ul>
照片集将是位于 _data
目录中的 photos.yml
文件,其结构类似于:
- src = assets/img/p1.jpg
date = 10-01-2017
name = cute cat
category = cats # if you need to filter by category ?
- src = assets/img/p2.jpg
date = 12-01-2017
name = grumpy cat-2
category = cats
- src = assets/img/p3.jpg
date = 10-11-2016
name = cool dog
category = dogs
我正在创建一个网站画廊。有这样一个结构:
my site
artworks
caty1
caty2
需要按创建日期在给定类别(caty2
或 caty1
)的页面中显示照片。
其实,如何使用Jekyll和Liqiud来实现呢?
或者是否有更合适的结构?
使用 liquid 你可以 filter/sort 一个数组,但它的任何元素属性都是你想要的。
在您的情况下,您需要创建 datafile(在 yml、csv 或 json) 代表一组照片,每张照片应该有一个 date
属性(连同名称、src、...)。
然后在生成 caty
页面的 layout
中,您将看到类似的内容:
{% assign sorted-photos = site.data.photos | sort: 'date' %}
<ul> <!-- list of sorted photos -->
{% for photo in photos %}
<li> <img src={{photo.src}} alt={{photo.name}}></li>
{% endfor %}
</ul>
照片集将是位于 _data
目录中的 photos.yml
文件,其结构类似于:
- src = assets/img/p1.jpg
date = 10-01-2017
name = cute cat
category = cats # if you need to filter by category ?
- src = assets/img/p2.jpg
date = 12-01-2017
name = grumpy cat-2
category = cats
- src = assets/img/p3.jpg
date = 10-11-2016
name = cool dog
category = dogs