2015-10-20 50 views
1

我在傑基爾配置中創建自定義集合:包括在傑基爾降價採集圖像,

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

它工作,如果你有ios.md和ios/xcode.png? – approxiblue

+0

好主意,似乎工作。有點違反直覺,也不自然......我的另一個解決方法是使用'![xcode](../ xcode.png)''。但我想知道最佳做法是什麼。 –

+0

最佳實踐最有可能將圖像保存在文檔中提到的one/assets文件夾中。您可以以對您有意義的方式組織您的網站。我在與他們的頁面相同的文件夾中有圖像,並且我沒有遇到這個問題,因爲我使用了.html頁面(在這種情況下,Jekyll不會自動創建文件夾+ index.html)。 – approxiblue

回答

1

因爲您的收藏有以斜線結尾的永久鏈接:

permalink: /tutorials/:path/ 

傑奇將把你降價文件到一個index.html文件,以使鏈接很漂亮。所以ios.md變成ios/index.html

您可以通過使用帶擴展名的鏈接完全避免此問題。這是the default option。注意有沒有尾隨斜線:

permalink: /tutorials/:path 

如果你仍然想免費推廣鏈接,那麼對於相對圖像路徑的工作,你可以移動的降價一個目錄:

ios.md 
ios/ 
    xcode.png 

或將圖像路徑更改爲![xcode](../xcode.png)。這兩種方法都不符合直覺。