Jekyll Markdown biçimli bağlantıları kullanır, ancak dahili içeriğe nasıl bağlanabilirim?
[[link]]
Jekyll Markdown biçimli bağlantıları kullanır, ancak dahili içeriğe nasıl bağlanabilirim?
[[link]]
Yanıtlar:
Artık aşağıdakileri kullanarak dahili bağlantıları gönderebilirsiniz:
[Some Link]({% post_url 2010-07-21-name-of-post %})
[Title of post](/correct/permalink)
tek bir komutla render etmek ? Sadece çok ayrıntılı olan filtreleme ile yapabilirdim.
Artık link
etiketi kullanarak yayınlar dışındaki sayfalara bağlanmak mümkündür . link
yayınlar, sayfalar, bir koleksiyondaki belgeler ve dosyalar için çalışır.
{{ 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
Etiketi kullanırken dosya uzantısını eklemeyi unutmayın . Bir bağlantı oluşturmak üzere kullanmak için:
[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 %})
Bkz. Jekyll Belgeleri .
{{ site.baseurl }}
oluşturulan href baseurl değerini iki katına beri kullanmaya gerek olmadığını buldum . [Link to a post]({% link _posts/2016-07-26-name-of-post.md %})
Sayfalar için, etiket eklememeye karar verdilerpage_url
, çünkü yine de sayfanın yolunu bilmek zorunda kalacaksınız. Yani sadece manuel olarak bağlantı vermelisiniz:
[My page](/path/to/page.html)
Veya sayfanın başlığını programlı olarak almak istiyorsanız böyle büyük ve çirkin bir şey yapabilirsiniz:
{% for page in site.pages %}
{% if page.url == '/path/to/page.html' %}
[{{ page.title }}]({{ page.url }})
{% endif %}
{% endfor %}
Eğer iç içerik aynı sayfada o zaman kullanarak ona bağlamak mümkündür auto_ids
özelliğini. Bunu şu durumlarda etkinleştirirsiniz _config.yml
:
kramdown:
auto_ids: true
Bu etkinleştirildiğinde her başlık id
, başlık metnine göre bir ref alır . Örneğin
### My Funky Heading
Olacak
<h3 id="my-funky-heading">My Funky Heading</h3>
Buna, aynı belge içinden aşağıdakine benzer bir şey yaparak bağlantı verebilirsiniz:
The funky text is [described below](#my-funky-heading)
İsterseniz açık bir kimlik atayabilirsiniz:
### My Funky Heading
{: #funky }
ve link ver
The funky text is [described below](#funky)
Jekyll'de bağlantı kurmanın birkaç yolu var, bazıları şimdi modası geçmiş.
Dahili dosyalara bağlanmanın önerilen yolu
[Link]({{ site.baseurl }}{% link path/to/file.md %})
Dosya hareket ederse veya silinirse bunun hataya neden olacağını unutmayın.
Bir sayfaya hataya neden olmadan bağlantı vermek için (bunun yerine bozuk bağlantılar):
[Link]({{ '/path/to/page/' | relative_url }})
Burada, sayfanın kalıcı bağlantısını bilmeniz relative_url
ve sitenin temel URL'si ile önek olarak eklendiğinden emin olmak için filtreden geçirmeniz gerektiğini unutmayın.
Sayfanın kalıcı bağlantısı, permalink
yapılandırma dosyanızdaki ayara ve dosyanın permalink
ön kısmındaki anahtara bağlıdır .
Göreli yolları kullanmak istiyorsanız (ve bağlantıların GitHub'ın işaretleme görünümünde çalışmasını istiyorsanız) kullanmalısınız jekyll-relative-links
. Bu, aşağıdaki gibi bağlantılar yazmanıza olanak tanır:
[Link](./path/to/file.md)
[Link to file in parent folder](../file.md)
Bunun proje dizininiz olduğunu düşünün:
"İndex.md" dosyasını "blog" klasörünün içindeki "20190920-post1.md" adlı bir dosyaya bağlamak için aşağıdakileri yapın:
Aşağıdakileri ekleyin:
[herhangi bir metin] (./ göreli yol)
Örneğin:
- [Sept 20th 2019 - Kikucare's Journey](./blog/20190920-post1.md)
Çıktı: