Jekyll 中的集合介绍

Jekyll 中的收藏提供了一个简单的方法来创建您自己的类别类别,围绕同类内容。这对于属于一个群体的作品来说是很棒的,但这些作品不是真正的帖子,不应该按时间安排。

让我们设置一个简单的动物收藏,将包含与我们最喜欢的动物相关的内容。

集合配置

首先,在您的 _config.yml 文件中设置收藏:

1[label _config.yml]
2collections:
3  animals:
4    output: true

将输出选项设置为 true 将为我们收藏中的每个文档生成一个页面。

然后,在您的 Jekyll 网站的根文件夹中,您将创建一个 _animals 文件夹,并为我们收藏中的每个动物填充标记文件:

1_animals/
2  zebra.md
3  lion.md
4  alligator.md
5  ...

通过这种方式,我们的动物可以通过去,例如, /动物 / 西布拉. 如果您愿意,您也可以定义不同的永久链接结构...

1[label _config.yml]
2collections:
3  animals:
4    output: true
5    permalink: /my-animal/:name

...这将使我们的动物页面在URL上可用,例如 /my-animal/zebra。


您可以为动物的属性定义默认值,例如,如果集合中的所有文档都共享相同的布局,则这可能是有用的:

1[label _config.yml]
2collections:
3  animals:
4    output: true
5    permalink: /my-animal/:name
6
7defaults:

<$>[警告]在更改 _config.yml 后,不要忘记重新启动本地服务器。

文件收藏

以下是我们收藏中的mardown文件中的内容的例子:

1[label _animals/zebra.md]
2---
3layout: animal # You can ommit this if you've set it as a default
4title: Zebra
5class:     Mammalia
6family: Equidae
7headline: Zebras are the best!
8picture: /images/animails/zebra.jpg
9---

我们的每个动物都将包含这些属性的值:标题,类,家庭,...,以及一些标记内容,将使用动物布局中的 {{内容 }}输出。

布局

下面是一个简单的布局可以看起来像什么的例子:

 1[label _layouts/animal.html]
 2---
 3layout: default
 4---
 5<article class="animal">
 6
 7    <img src="{{ page.picture }}" alt="Photo of a {{ page.title | downcase }}">
 8
 9  <h1>Animal Profile: {{ page.title }}</h1>
10
11  <div class="animal-class {{ page.class | downcase }}">
12    {{ page.class }}
13  </div>
14
15  <div class="animal-family {{ page.family | downcase }}">
16    {{ page.family }}
17  </div>
18
19  <div>
20    {{ content }}
21  </div>
22
23</article>

<$>[注] 在这里,我们的 动物布局取决于 默认布局。

收藏文件列表

假设你有一个页面,你想列出和链接到收藏中的每个动物。 这是很容易通过访问我们的收藏虽然网站变量。 还记住,URL属性是如何自动可用,并允许轻松链接到文档:

1[label pages/animals.md]
2---
3layout: page
4title: "A list of animals"
5permalink: "/animals/"
6---

除了 url,每个文档上自动可用几个属性:内容、输出、路径、 relative_path、集合和日期。

作者使用案例

在这个网站的情况下,我们收集了文章的作者,在布局中有这样的东西:

1<span class="author">
2    <a href="{{ author.url }}">{{ author.title }}</a>
3  </span>

具有作者的帖子定义了一个作者属性,该属性与作者收藏的每个文档中的 slug属性相关,由于流体模板语言的功能,我们可以为每个帖子获取正确的作者。

为您的静态Jekyll站点创建收藏有趣! 有关更多细节,请参阅 官方文档

Published At
Categories with 技术
Tagged with
comments powered by Disqus