Your CSS is automatically scoped to
[data-block="…"].
Use CSS nesting for child rules.
Note:
@keyframes,
@font-face, and
@import
cannot be scoped — use site-wide Custom CSS in Settings for those.
Use {{fieldName}} to insert entry field values. Values are HTML-escaped
automatically to prevent XSS.
| Placeholder | Value |
|---|---|
{{fieldName}} |
Any entry field — e.g. {{title}}, {{rating}},
{{message}} |
{{_id}} |
Entry UUID |
{{_createdAt}} |
Creation timestamp (ISO 8601 by default) |
{{_updatedAt}} |
Last-updated timestamp (ISO 8601 by default) |
{{field:FORMAT}} |
Any placeholder with a :FORMAT suffix
applies moment-style date formatting when the value parses as a date.
E.g. {{_createdAt:DD MMM YYYY}} →
05 Jan 2026, or
{{_createdAt:HH:mm}} →
14:30.
|
Format tokens:
YYYY YY
MMMM MMM
MM M
DD D
dddd ddd
HH H
hh h
mm m
ss s
A a
— any literal character that isn't one of these tokens passes through unchanged
(so DD/MM/YYYY, HH:mm,
and dddd D MMMM YYYY all work).
Use in a shortcode:
[collection slug="feedback" display="block" block="feedback-card" /] [view slug="my-view" display="block" block="feedback-card" /]
Example block template:
<div class="card mb-3">
<div class="card-body">
<h3>{{name}}</h3>
<p>{{message}}</p>
<small>Rating: {{rating}} — {{_createdAt}}</small>
</div>
</div>