在jekyll中设置多个类别

时间:2014-10-16 17:12:14

标签: ruby markdown jekyll

我有一个降价文件如下:

---
title: My Page
categories:
- first
- second
---

在我的_config.yml文件中,我将永久链接设置为/:categories/:title.html

因此,当我生成网站时,永久链接最终为/first/second/title.html,而 我希望Jekyll能够创建/first/title.html和/second/title.html

有没有办法在没有自定义插件的情况下执行此操作?

干杯

2 个答案:

答案 0 :(得分:4)

最简单和最好的方法是通过frontmatter定义永久链接。这对于搜索引擎优化也很有用。首先你通过_config.yml告诉Jekyll如果忘记通过frontmatter设置链接,Jekyll应该如何构建链接:

<强> _config.yml

# Build settings
permalink: /:categories/:title/

定义永久链接......

<强> 2014-10-17_my_post.md

---
layout: post
title: 'Post with permalink'
permalink: /this-is-the-unique-permalink/
---

My Post

答案 1 :(得分:2)

根据these docs,看起来每个Jekyll页面只能有一个类别。 categories有点用词不当,因为你真的定义了一个“类别层次结构” - 就像文件路径一样 - 所以帖子真的存在于一个(子)类别中。在这种有限的意义上,你不能用香草杰基尔做你想做的事。

然而,Jekyll将处理文件只是坐在任何不以下划线开头的目录中,它遵循符号链接。因此,例如,如果您为每个类别创建目录并将页面放在其中一个类别中,则可以为任意数量的其他“类别”创建符号链接。

mkdir first second
touch first/page.md
ln -s ../first/page.md second/