Permalink Templates

Permalinks refer to the relative URL for your pages. Cobalt supports a flexible way to build permalinks, allowing you to leverage various Liquid template variables.

Permalinks are configured in the frontmatter. When configuring a permalink, you're most likely to want to set it as a default

Example:

title:   My first Blogpost
layout: posts.liquid
permalink: /some/other/file.html

Results in

  • The file's URL: your-website.com/some/other/file.html
  • page.permalink: some/other/file.html

Note: Permalinks templates must start with a /.

Pretty URLs

When you omit the file extension (e.g. .html) in your permalink, Cobalt will treat the permalink as a folder and create the file with the name index.html.

Example:

title:   My first Blogpost
layout: posts.liquid
permalink: /some/other/file

Results in

  • The file's URL: your-website.com/some/other/file/index.html
  • page.permalink: some/other/file

Template Variables

Variable Description
parent The directory path to the file. e.g. If the file is posts/some/file.md, then parent will be posts/some.
name The file name without the extension. e.g. If the file is posts/some/file.md, then name will be file.
ext The output file extension.
slug The page's slug.
categories The categoies for the page, separated by /. e.g. If the frontmatter's categories are "Animals", "Dogs", then the permalink's categories is animals/dogs.
year The published_date's year.
i_month The published_date's month.
month The published_date's month, with a leading 0.
i_day The published_date's day.
day The published_date's day, with a leading 0.
hour The published_date's hour, 24-hour clock, with a leading 0.
minute The published_date's minute, with a leading 0.
second The published_date's second, with a leading 0.
data The frontmatter data.

Example:

title: Corgi
layout: posts.liquid
categories:
  - Animals
  - Dogs
permalink: /{{categories}}/{{slug}}

Results in

  • The file's URL: your-website.com/animals/dogs/corgi/index.html
  • page.permalink: animals/dogs/corgi

Built-in Permalink Styles

Cobalt also provides some built-in permalink templates.

Permalink Style URL Template
path /{{parent}}/{{name}}{{ext}}

Example file some/other/file.md:

title:   My first Blogpost
layout: posts.liquid
permalink: path

Results in

  • The file's URL: your-website.com/some/other/file.html
  • page.permalink: some/other/file.html