簡體   English   中英

jekyll markdown 內部鏈接

[英]jekyll markdown internal links

Jekyll 使用 Markdown 格式的鏈接,但如何鏈接到內部內容?

[[link]] 

您現在可以使用以下方法發布內部鏈接:

[Some Link]({% post_url 2010-07-21-name-of-post %})

Jekyll 文檔中也引用了這一點。

https://github.com/mojombo/jekyll/pull/369

現在可以使用link標簽鏈接到帖子以外的頁面。 link適用於文章、頁面、集合中的文檔和文件。

{{ site.baseurl }}{% link _collection/name-of-document.md %}
{{ site.baseurl }}{% link _posts/2016-07-26-name-of-post.md %}
{{ site.baseurl }}{% link news/index.html %}
{{ site.baseurl }}{% link /assets/files/doc.pdf %}

請記住在使用link標簽時包含文件擴展名。 要使用它來創建鏈接:

[Link to a document]({{ site.baseurl }}{% link _collection/name-of-document.md %})
[Link to a post]({{ site.baseurl }}{% link _posts/2016-07-26-name-of-post.md %})
[Link to a page]({{ site.baseurl }}{% link news/index.html %})
[Link to a file]({{ site.baseurl }}{% link /assets/files/doc.pdf %})

請參閱Jekyll 文檔

對於頁面, 他們決定不添加page_url標記,因為無論如何您都必須知道頁面的路徑。 所以你只需要手動鏈接到它:

[My page](/path/to/page.html)

或者,如果您想以編程方式獲取頁面的標題,您可以做一些像這樣又大又丑的事情:

{% for page in site.pages %}
  {% if page.url == '/path/to/page.html' %}
[{{ page.title }}]({{ page.url }})
  {% endif %}
{% endfor %}

如果內部內容在同一頁面上,則可以使用auto_ids功能鏈接到它。 您可以在_config.yml啟用它:

kramdown:
    auto_ids: true

啟用此功能后,每個標題都會根據標題文本獲得一個id ref。 例如

### My Funky Heading

將成為

<h3 id="my-funky-heading">My Funky Heading</h3>

您可以通過執行以下操作從同一文檔中鏈接到此內容:

The funky text is [described below](#my-funky-heading)

如果您願意,可以指定一個明確的 id:

### My Funky Heading
{: #funky }

並鏈接到它

The funky text is [described below](#funky)

Jekyll 中有多種鏈接方式,其中一些已經過時。

帶鏈接標簽

鏈接到內部文件的推薦方法是

[Link]({{ site.baseurl }}{% link path/to/file.md %})

請注意,如果文件移動或被刪除,這將導致錯誤。

有固定鏈接

要鏈接到頁面而不導致錯誤(改為斷開鏈接):

[Link]({{ '/path/to/page/' | relative_url }})

注意這里你需要知道頁面的永久鏈接,並通過relative_url過濾器來確保它以站點的基本url為前綴。

頁面的permalink取決於配置文件中的permalink設置和文件前面的permalink鍵。

使用 jekyll-relative-links

如果你想使用相對路徑(並希望鏈接在 GitHub 的降價視圖中工作),你應該使用jekyll-relative-links 這使您可以編寫如下鏈接:

[Link](./path/to/file.md)

[Link to file in parent folder](../file.md)

想象一下這是你的項目目錄:

項目目錄

要將“index.md”鏈接到文件夾“blog”中名為“20190920-post1.md”的文件,請執行以下操作:

  1. 打開文件“index.md”。
  2. 添加以下內容:

    [任何文本](./相對路徑)

例如:

- [Sept 20th 2019 - Kikucare's Journey](./blog/20190920-post1.md)

輸出:

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM