Tag e filtri
Tag personalizzati
| Tag | Uso |
|---|---|
{% schema %}{ ...JSON... }{% endschema %} | definisce lo schema della sezione (impostazioni e blocchi); non produce output |
{% section 'nome' %} | include la sezione sections/nome.html |
{% style 'file.css' %} | inserisce il tag <link> allo stylesheet dell'asset |
{% asset 'file.js' %} | inserisce il tag <script> all'asset |
{% nav voce %} | risolve l'URL di una voce di menu |
{% for item in menuitems %}
<a href="{% nav item %}">{{ item.label }}</a>
{% endfor %}Escape dei valori (escape)
Il motore dei temi esegue Jinja senza autoescape: ogni {{ }} finisce nella
pagina come HTML. Per i contenuti dell'organizzazione va bene (campaign.content è
HTML), ma i valori che arrivano da chi visita il sito vanno passati per escape,
altrimenti possono iniettare markup. In pratica: i valori ristampati da un form dopo
un errore e i dati del sostenitore.
<input name="email" value="{{ (form.email.value() or '')|escape }}" />
<div>{{ profile.full_name|escape }}</div>Esiste anche l'alias e; nei temi ufficiali usiamo escape, più leggibile.
Filtri
| Filtro | Uso | Risultato |
|---|---|---|
format_money | `{{ amount | format_money }}` |
format_date | `{{ value | format_date }}` |
Sono disponibili anche tutti i filtri standard di Jinja (upper, lower,
truncate, length, default, join, ...).
Fonte: https://dev.riseact.org/docs/themes/tags-and-filters. Copia automatica da dev.riseact.org: non modificare qui, le modifiche vanno fatte sulla documentazione Docusaurus.