Voit käyttää HTML:ää TWIG-muuttujissa, mutta sinun on nimenomaisesti sallittava se safe_html -suodattimella. Näin varmistetaan, että tietoturva säilyy.
Miksi HTML ei toimi suoraan TWIG:ssä?
Aivie on tiukentanut turvatoimiaan, ja HTML:n käsittelyä TWIG-muuttujissa on rajoitettu. Syynä tähän on se, että hallitsematon HTML voi aiheuttaa tietoturvariskin esimerkiksi upotetun JavaScriptin tai ulkoisen sisällön kautta.
Siksi uusi:
- Toiminnot, kuten
|raw, eivät ole enää sallittuja. - Ei suoria HTML-tunnisteita tunnisteiden kautta
- Vain turvallinen, valvottu ulostulo sallittujen TWIG-toimintojen kautta.
Ratkaisu: Käytä safe_html -suodatinta
Jos haluat jatkaa HTML:n käyttöä, uusi TWIG-suodatin on käytettävissä: safe_html.
Tämä suodatin sallii määritetyn luettelon turvallisista HTML-tunnisteista. Näin voit jatkaa jäsennellyn sisällön, kuten taulukoiden, muotoilujen tai yksinkertaisten ulkoasujen käyttöä.
Ei sallittuja ovat esim:
- JavaScript
- iFrames
- Kuvat
- Ulkoinen sisältö, johon liittyy mahdollinen riski
Sallitut HTML-elementit perustuvat viralliseen sanitizer-luetteloon (MDN HTML Sanitizer API).
Esimerkki
Näin voit tulostaa HTML:n oikein TWIG-muuttujaan:
<td valign="top" style="width: 100%">
{{ item.name | safe_html }}
</td>
Tärkeää: Suodatinta on sovellettava kaikkialla, missä odotetaan HTML:ää.
Mitä muuta on parannettu?
- TWIG:n suora tarkastelu ja muokkaus sähköpostin, aloitussivun ja dynaamisen sisällön editorissa.
- Aivie Builderin koodieditori tukee nyt TWIG:tä natiivisti (linting, type ahaed, formatointi, snippets).
- TWIG-sisällön parannettu esikatselu
Päätelmä
HTML-tunnisteet ovat mahdollisia TWIG:ssä, mutta niitä ohjataan vain safe_html -suodattimella. Näin voit yhdistää joustavuuden ja turvallisuuden ja välttää turvattomasta koodista aiheutuvat riskit.

