Page properties

Use page.* to access metadata from the current page's frontmatter. These properties let you dynamically reference page values without hardcoding them.

For project-level configuration, see Project properties.


Basic usage

---
author: Jane Smith
---
This guide was written by {{ page.author }}.

Output:

This guide was written by Jane Smith.

Common properties

Property Description
page.title The page title
page.label The navigation label
page.author Author name or object
page.created The original publish date
page.lastUpdated The most recent update date
page.tags Tags assigned to the page
page.categories Categories assigned to the page
page.layout The page layout type
page.icon The page icon
page.order The navigation order value

Date properties

Use page.created and page.lastUpdated when you want to show when a page was first created and when it was last updated.

---
created: 2024-05-14
lastUpdated: 2026-03-01
---
Published: {{ page.created }}
Updated: {{ page.lastUpdated }}

Output:

Published: 2024-05-14
Updated: 2026-03-01

Working with arrays

Access individual items using bracket notation:

---
tags: [guide, tutorial, beginner]
authors: [Alice, Bob, Charlie]
---
First tag: {{ page.tags[0] }}
Second author: {{ page.authors[1] }}

Output:

First tag: guide
Second author: Bob

Nested properties

Access nested objects using dot notation:

---
author:
  name: Jane Smith
  email: jane@example.com
meta:
  title: Custom SEO Title
---
Author: {{ page.author.name }}
Email: {{ page.author.email }}
Meta title: {{ page.meta.title }}

Output:

Author: Jane Smith
Email: jane@example.com
Meta title: Custom SEO Title

Escaping template syntax

Inline escaping

To display literal {{ }} syntax without the template engine processing it, wrap the content in opening {%{ and closing }%} escape tags:

{%{ {{ page.title }} }%}

This is useful when documenting template syntax or showing code samples that include double curly braces.

Page-level escaping

To disable templating for an entire page, set templating: false in the page settings:

---
templating: false
---

Project-level escaping

To disable templating project-wide, update your retype.yml with the following:

templating:
  enabled: false
templating