在jekyll中配置每个目录的永久链接设置

时间:2011-06-24 13:35:41

标签: configuration permalinks jekyll

是否可以为不同的目录设置不同的固定链接?

例如,如果我有一个Jekyll设置,其中博客条目写入/blog/_posts/,新闻项目写入/news/_posts,则默认情况下,每个条目都将以/blog/2011/06/24/slug.html格式的永久链接和/news/2011/06/24/slug.html

博客条目的永久链接很好,但我需要将新闻的永久链接格式更改为不同的内容,例如/news/2011/slug

我已尝试更改YAML前端问题中的permalink设置以获取新闻项使用的布局,但是,由于未插入YAML前端内容中的永久链接设置,因此无效(as confirmed in the answer to this question )。

是否有机制在_config.yaml中配置路径特定设置?或者有更好的方法来实现这一结果吗?

3 个答案:

答案 0 :(得分:2)

现在不确定这是否会有任何帮助,但我遇到了同样的问题,试图建立一个博客/投资组合,并希望有/ articles / 2013 / ..和/ work / 2013 / ..

我所做的只是将固定链接更改为:

permalink: /:categories/:year/:title

并添加了“文章”作为我的博客帖子和“工作”的类别作为我的工作的一个类别,它工作得很好。

答案 1 :(得分:2)

刚刚受到了约瑟的评论的启发。为什么不这样做:

permalink: /:categories/:title

然后在你的博客的前端问题上做

categories: blog 2013 05 01

仅限新闻

categories: news 2013

答案 2 :(得分:1)

实现这一目标的唯一方法是拥有两个不同的jekyll实例。

你可以拥有(例如)包含页面和博客的完整网站,以及新闻文件夹中的“微网站”,它拥有自己的'_config.yaml'。 “top”必须完全忽略新闻目录,并且必须配置新闻目录以在“../_ site / news”内生成其输出。

最大的障碍是你无法将Jekyll作为服务器运行;你必须使用一个脚本(即一个Rakefile)为两个jekylls生成静态页面,并用不同的服务器(即独角兽)提供它们。

就像我说的那样,它有点障碍,但可以在1小时或更短的时间内完成。