#
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
#
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