我在Jekyll配置中创建了一个自定义集合:
collections:
tutorials:
output: true
permalink: /tutorials/:path/
我有一个带有路径的降价文件:_tutorial/category/ios.md
我还有一张路径为_tutorial/category/xcode.png
在 ios.md 中,我使用:
![xcode](xcode.png)
哪个应该有意义,因为它们位于同一目录中。
在 _site 生成的文件夹中,我看到了
tutorial/
category/
xcode.png
ios/
index.html
很明显,生成的HTML正在查找图像的错误位置,因为它们不再位于同一目录中。
我想改变我的结构让我的降价文件为_tutorial/category/ios/index.md
,但它所做的只是创建一个名为index
的文件夹,所以问题是一样的。
在Jekyll / Markdown中包含图像的预期方式是什么?
我是否应该将它们全部保存在网站根目录下的文件夹中?这显然会奏效,但很难跟踪哪些图像与每个帖子相关联......
答案 0 :(得分:2)
因为你的收藏集有一个以斜杠结尾的永久链接:
permalink: /tutorials/:path/
Jekyll会将您的Markdown文件转换为index.html
文件,以使链接更漂亮。因此ios.md
变为ios/index.html
。
您可以使用带扩展名的链接完全避开此问题。这是the default option。请注意,没有斜杠:
permalink: /tutorials/:path
如果您仍然需要无扩展链接,那么要使相对图像路径起作用,您可以将Markdown向上移动一个目录:
ios.md
ios/
xcode.png
或将图片路径更改为![xcode](../xcode.png)
。这两种方法都是违反直觉的。