Подтвердить что ты не робот

Внутренние ссылки на jekyll

Jekyll использует ссылки в формате Markdown, но как я могу ссылаться на внутренний контент?

[[link]] 
4b9b3361

Ответ 2

Теперь можно ссылаться на страницы, отличные от постов, используя тег 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.

Ответ 3

Для страниц они решили не добавлять тег 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 %}

Ответ 4

В Jekyll существует несколько способов создания ссылок, некоторые из которых уже устарели.

С тегами ссылки

Рекомендуемый способ ссылки на внутренние файлы:

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

Обратите внимание, что это приведет к ошибке, если файл перемещается или удаляется.

С постоянными ссылками

Чтобы создать ссылку на страницу без ошибок (вместо этого неработающие ссылки):

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

Обратите внимание, что здесь вам нужно знать постоянную ссылку страницы и передать его через relative_url фильтр, чтобы убедиться, что он предваряется с базовым URL сайта.

Постоянная ссылка на страницу зависит от настройки permalink в вашем конфигурационном файле и ключа permalink в permalink файла.

С помощью jekyll -lative-Links

Если вы хотите использовать относительные пути (и хотите, чтобы ссылки работали в режиме разметки GitHub), вам следует использовать jekyll-relative-links. Это позволяет вам писать ссылки, такие как:

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

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

Ответ 5

Если внутреннее содержимое находится на той же странице, то на него можно ссылаться с помощью функции 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)

Вы можете назначить явный идентификатор, если вы предпочитаете:

### My Funky Heading
{: #funky }

и ссылка на него

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

Ответ 6

Представьте, что это каталог вашего проекта:

project directory

Чтобы связать "index.md" с файлом в папке "blog" с именем "20190920-post1.md", выполните следующие действия:

  1. Откройте файл "index.md".
  2. Добавьте следующее:

    [любой текст] (./относительный путь)

Например:

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

Выход:

enter image description here