Du kannst HTML in TWIG-Variablen verwenden, musst es aber explizit mit dem safe_html Filter erlauben. Dadurch bleibt die Sicherheit gewährleistet.
Warum funktioniert HTML in TWIG nicht direkt?
Aivie hat die Sicherheitsmassnahmen verschärft und so wurde die Verarbeitung von HTML in TWIG-Variablen eingeschränkt. Der Grund ist, dass unkontrolliertes HTML ein Sicherheitsrisiko darstellen kann, z.B. durch eingebettetes JavaScript oder externe Inhalte.
Deshalb gilt neu:
- Funktionen wie
|rawsind nicht mehr erlaubt - Keine direkten HTML-Tags über Tokens
- Nur noch sichere, kontrollierte Ausgabe über erlaubte TWIG-Funktionen
Lösung: Verwende den safe_html Filter
Um weiterhin HTML nutzen zu können, steht ein neuer TWIG-Filter zur Verfügung: safe_html.
Dieser Filter erlaubt eine definierte Liste sicherer HTML-Tags. Damit kannst du weiterhin strukturierte Inhalte wie Tabellen, Formatierungen oder einfache Layouts verwenden.
Nicht erlaubt sind z.B.:
- JavaScript
- iFrames
- Bilder
- externe Inhalte mit potenziellem Risiko
Die erlaubten HTML-Elemente basieren auf der offiziellen Sanitizer-Liste (MDN HTML Sanitizer API).
Beispiel
So kannst du HTML in einer TWIG-Variable korrekt ausgeben:
<td valign="top" style="width: 100%">
{{ item.name | safe_html }}
</td>
Wichtig: Der Filter muss überall dort angewendet werden, wo HTML erwartet wird.
Was wurde zusätzlich verbessert?
- Direkte Ansicht und Bearbeiten von TWIG im E-Mail, Landingpage und Dynamic-Content Editor
- Der Code Editor im Aivie Builder unterstützt jetzt TWIG nativ (Linting, Type Ahaed, Formatting, Snippets)
- Verbesserte Vorschau von TWIG Inhalten
Fazit
HTML Tags sind in TWIG möglich, aber nur kontrolliert über den safe_html Filter. Dadurch kombinierst du Flexibilität mit Sicherheit und vermeidest Risiken durch unsicheren Code.

