The {{include:default.html}} parameter includes a template file to be incorporated into the rendered page.
The rvalue of the parameter is the template file name to be included, starting from the templates directory.
For example, on this documentation site, there is a template file located at the path templates/parameter-include-example.html.
The node for this page is about to include the file. Ready?
--- RIGHT BEFORE THE INCLUDE ---
This is the parameter-include-example.html file
--- RIGHT AFTER THE INCLUDE ---
Template files generally have html file extensions, but this is not a requirement.
As a special case, you can not include a template named null. This is because the null template has special meaning when used as a value in the Template node header.
Nodes and templates can both include templates. And the template that you include can also have includes of its own. However, Uriel will prevent you from creating an infinite include loop.
Let's take a look at an example. This page is generated from the following node and template:
What would happen if we got default.html to include a new template called loop.html, but also made loop.html include default.html? It would cause an infinite loop.
Fortunately, Uriel detects this, and provides a helpful error message so that you can track down what happened:
copying 'static' to 'public', overwriting previous contents initializing soju initializing handlers reading node files rendering node content include loop error: nodes/parameters/include >>> templates/default.html <<< LOOP STARTS HERE > templates/loop.html >>> templates/default.html <<< WOULD REPEAT FOREVER uriel: include loop detected in: 'templates/default.html'
This page was generated by Uriel with the following settings:
Page Details
| Resource | Path | Project File |
|---|---|---|
| Node | parameters/include | nodes/parameters/include |
| Template | default.html | templates/default.html |
| URL | /parameters/include/ | public/parameters/include/index.html |
Node Headers
| Header (Lowercase) | Value |
|---|---|
| title | {{include:default.html}} |
| +-tags | * |
| breadcrumb-separator | » |
| canonical-url | https://documentation.uriel.foo |
| rss-description | Uriel Documentation |
| rss-image-height | 32 |
| rss-image-url | /favicon-32x32.png |
| rss-image-width | 32 |
| rss-max-entries | 50 |
| rss-title | Uriel Documentation |
| rss-url | /rss.xml |
| sitemap-max-entries | 10000 |
| sitemap-url | /sitemap.xml |
| tag-node | tag |
| tags | parameters |
| template | default.html |
Node Timestamps
| Type | Value |
|---|---|
| Created | |
| Modified | 2026-06-11T18:31:36-04:00 |
Node Methods
| Method | Value |
|---|---|
| get_parent_node() | parameters/index |
| get_path() | parameters/include |
| get_node_type() | file |
| get_url() | /parameters/include/ |
| get_canonical_url() | https://documentation.uriel.foo/parameters/include/ |
| get_name() | include |
| get_display_name() | Include |
| get_title() | {{include:default.html}} |
| get_escaped_title() | {{include:default.html}} |
| get_link() | <a href="/parameters/include/">{{include:default.html}}</a> |
| get_canonical_link() | <a href="https://documentation.uriel.foo/parameters/include/">{{include:default.html}}</a> |
| get_link_prefix() | <p> |
| get_link_suffix() | </p> |
| get_tags() | ['parameters'] |
| get_dest_dir() | ./public/parameters/include |
| get_dest_file() | ./public/parameters/include/index.html |
| get_breadcrumb_separator() | » |