markdownThe markdown format is a special form of the text type but
instead of rendering unformatted text, it parses it as
Markdown and converts it into
HTML.
Normally accessing the Markdown field just returns the rendered HTML but there are some special attributes on it to access more information:
| Attribute | Explanation |
|---|---|
html |
the rendered Markdown as HTML string |
source |
the unprocessed Markdown source |
Additional attributes can become available through the use of plugins.
[fields.body] label = Body type = markdown
<div class="body"> {{ this.body }} </div>
The way in which links in Markdown fields are resolved to URLs can be
controlled using the resolve_links field option. There are three
possible values for the option:
resolve_links = never
Never resolve links to Lektor source objects. This was the link
resolution behavior for all versions of Lektor before FIXME.
resolve_links = when-possible
This is the new default behavior. When possible, links are resolved
to Lektor source objects, then the URL to those
source objects is used. When the resolution to a source object
fails, the links are interpreted as URL paths.
resolve_links = always
Resolve links to Lektor source objects, then use the URL of those
source objects. If that resolution fails, an error is raised.
The resolve_links option only applies to Markdown links that do not
include an explicit scheme or netloc.
As an example, to force the old behavior, wherein links were never
resolved via the Lektor database, configure a markdown field like
so:
[fields.body] label = Body type = markdown resolve_links = never
When links are resolved through the Lektor database, URLs to specific _alt_s may be obtained by adding an alt query arg to the link.
For example, to link to the current page, but in the French alt:
Here is the [French version of the blog](/blog?alt=fr).
Comments