2016-01-21 75 views
0

我有一個通過GitHub項目頁面託管的類網站,並使用Jekyll構建。問題是我想要一個R Markdown文件(.Rmd,帶R代碼降價)作爲學生下載的靜態文件,但Jekyll將它連接爲一個頁面,就好像它位於我的網站的根目錄中一樣。一個.md防止Jekyll從靜態文件創建頁面鏈接

像這樣:

banner image

的站點(在GH-頁面分支)的Here's the repo,有一個在自述文件它是活的鏈接。

+0

它似乎工作正常。我能夠在OS X上下載降價模板 – TheGeorgeous

+0

此處鏈接到*/assets/RMarkdownTemplate.Rmd *並作爲BIN文件傳輸(下載)。 –

+0

噢,對不起,我不希望它顯示在那裏,我希望它存在'/ assets /'中,然後從另一個頁面鏈接到它。我不想要Jekyll在頂部鏈接的行爲 – dnedveck

回答

1

這樣做是因爲該文件具有前端問題(並且在前面的問題中的標題更具體),並且您的頭文件(_includes/header.html)正在自動構建主導航,如下所示:

{% for my_page in site.pages %} {% if my_page.title %} <a class="page-link" href="{{ my_page.url | prepend: site.baseurl }}">{{ my_page.title }}</a> {% endif %} {% endfor %}

如果你刪除了前面的問題,它不會在那裏結束。如果您需要前面的內容,您可以更改導航的構建方式,也許可以通過添加像mainnav之類的東西來解決:對於您想要在主導航中結束的文件的前端問題,請執行以下操作。然後,您可以將if語句更改爲if my_page.mainnav

我不太喜歡主導航的構建方式,我認爲這只是一個例子,它可以用很多方式構建,您可能希望獲得更多的控制權限,只需擁有任何具有前端功能的文件並在那裏結束一個標題。

+0

謝謝!那麼,你知道是否有一個選擇jekyll只是複製一個目錄到最終的網站,但忽略內的文件?我試着在我的'_config.yml'中使用'keep_files:[assets]',但它似乎並沒有單獨留下資源中的內容(它仍然解析前面的問題)...... – dnedveck

+0

如果有前面的事情,jekyll處理它們,並尋找事情要做。如果沒有前端問題,那麼jekyll只會將其複製到_site目錄中的相同位置。所以圖像只是被複制,如果你有一個.md文件,它沒有前端問題,那麼它應該以同樣的方式行事 - 只需複製到_site中的相同目錄。如果你只是想要他們複製你爲什麼需要前面的問題? – Ron

+0

keep_files有點含糊 - 在構建時生成站點時,jekyll將徹底清除_site文件夾。 keep_files應該讓jekyll在構建時將其從_site文件夾中刪除。我不確定這是什麼用例。如果你把文件夾放在_site文件夾中,而不是主文件夾中,它可以做你想做的。但是我認爲這是一個糟糕的主意,除非是大量的文件減慢了構建速度。 – Ron