Answers:
[Title of post](/correct/permalink)
使用单个命令进行渲染?我只能用太冗长的过滤来做到这一点。
现在可以使用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文档。
{{ site.baseurl }}
它,因为它将生成的href中的baseurl值加倍。[Link to a post]({% link _posts/2016-07-26-name-of-post.md %})
对于页面,他们决定不添加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
基于标题文本的参考。例如
### 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
键。
如果您想使用相对路径(并且希望链接在GitHub的markdown视图中工作),则应使用jekyll-relative-links
。这使您可以编写如下链接:
[Link](./path/to/file.md)
[Link to file in parent folder](../file.md)
想象这是您的项目目录:
要将“ index.md”链接到文件夹“ blog”中名为“ 20190920-post1.md”的文件,请执行以下操作:
添加以下内容:
[任何文字](./相对路径)
例如:
- [Sept 20th 2019 - Kikucare's Journey](./blog/20190920-post1.md)
输出: