1
0
silverbullet/website/Live Templates.md

43 lines
1.2 KiB
Markdown
Raw Normal View History

Live Templates are a type of [[Blocks|block]] that render [[Templates]] inline in a page.
Template blocks are specified using [[Markdown]]s fenced code block notation using `template` as a language. The body of the block specifies the template to use, as well as any arguments to pass to it.
2023-12-21 17:37:50 +00:00
Generally youd use it in one of two ways, either using a `page` [[Templates|template]] reference, or an inline `template`:
Heres an example using `page`:
```template
page: "[[internal-template/today]]"
```
2023-12-21 17:37:50 +00:00
And heres an example using `template`:
```template
template: |
Today is {{today}}!
```
To pass a literal value to the template, you can specify the optional `value` attribute:
```template
template: |
Hello, {{name}}! Today is _{{today}}_
value:
name: Pete
```
You can also pass in the result of a [[Live Queries|query]] as a value by setting the `query` attribute:
```template
query: |
tag where parent = "page" select name
template: |
{{#each .}}
* #{{name}}
{{/each}}
```
2023-12-21 17:37:50 +00:00
If you just want to render the raw markdown without handling it as a handlebars template, set `raw` to true:
```template
template: |
This is not going to be {{processed}} by Handlebars
raw: true
```