如何使用Jekyll生成不是* .html 文件但是使用其他扩展名生成文件?我想用 rb 插件修补它。有可能吗?
我试过这个(谷歌搜索过),但它不起作用:
module Jekyll
# Extensions to the Jekyll Page class.
class Page
def output_ext(ext)
".myext"
end
end
end
答案 0 :(得分:1)
如果您想要使用扩展名为“_sites/
的输出”,则只能使用pages
个文件 - 他们没有使用配置中的permalink
,所以这些文件将具有您为其提供的相同扩展名。
因此,最小的集合是项目根目录下的文件page.my-ext
,具有YAML前端(可能为空),如下所示:
---
---
Foo
这样的文件对于Jekyll是可见的,你可以在里面使用任何液体标记,或者使用任何布局,然后这个文件将保存到_sites/
,其名称与之前相同。 / p>
您无法在/_posts/
中使用此类文件,因为当设置permalink
时,Jekyll仅将文件保存为.html
。
带有转换器的自定义插件适用于我,但也适用于简单页面 - 来自/_posts/
的帖子仍然是.html
,因此它似乎是硬编码的。
所以,现在唯一的方法是使用简单的页面而不是帖子。如果你想像帖子那样迭代所有这些页面,你应该阅读Jekyll Bootstrap的pages_list module是如何制作的 - 我认为它是这样的。
答案 1 :(得分:1)
编辑:
在此处找到溶剂: http://jekyllrb.com/docs/permalinks/
您可以在标记帖子中指定固定链接。遗憾的是,如果在_config.yml
中指定,它将无法工作根据我的测试,如果您输入:
永久链接:/whatever/filename/with/arbitrary.xtension
在标记帖子中,您的索引文件将命名为" arbitrary.xtension"并放在文件夹中:
/不管/文件名/带/
对于文件内容需要与扩展程序保持一致的其他应用程序,此插件可能对您有所帮助: https://github.com/fauno/jekyll-pandoc-multiple-formats