Question

I tried to link with the html file name, but it works because they are on the same folder.

[Title](./this-is-the-file.html)

But it is possible that another article would appear on another folder because of the ARTICLE_URL pattern. Examples:

[Title 1](/2014/02/article1.html)
[Title 2](/2014/01/25/article2.html)

Is it possible to link your own articles with a reference to the slug ? Any other better solution than the generated HTML file name ?

Was it helpful?

Solution

As noted in the documentation, you can link to other source content files via:

[a link relative to content root]({filename}/this-is-the-source-file.md)

... or ...

[a link relative to current file]({filename}../this-is-the-source-file.md)

Pelican will incorporate your chosen URL scheme and automatically determine the proper way to link to the other article.

OTHER TIPS

The way I do this is by specifying my own sluglines using the save_as metadata tag. So if I have a blog post called my_post.md, it'll look like this:

Title: My Blog Post
save_as: myblogpost.html

This is the world's most boring blog post.

That ensures I can link to it at /myblogpost.html. Then in some other blog post, I can say:

Title: My Second Blog Post
save_as: mysecondblogpost.html

This is the world's second most boring blog post. The most boring blog post is [here]({{ SITEURL }}/myblogpost.html).

It's a more flexible and elegant solution that gives you finer-grained control. And if you're not using Pelican for a blog site, it's pretty essential.

To deal with link in rst / restructured text.

Say you want to have link from your second post to first. Here is piece of context from that second post:

If you wish to see my first blog post click `here`_

.. _here: first-blog-post

And first blog post should have proper slug:

First blog post
########################################
:date: 2019-02-18 20:31
:category: entry
:tags: python, blog, first
:slug: first-blog-post

I have configuration:

ARTICLE_URL = '{date:%Y}/{date:%m}/{slug}.html'

and it deals with additional stuff like year, and month. Most probably you can stick with slug instead of having to track HTMLs.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top