Twig在清理危险的用户输入方面做得很好。但是,我正在构建一个特定的Web应用程序,我希望允许用户在公共评论中发布可点击的URL链接。有什么方法可以让Twig 不清理URL链接,但仍然清理其他所有内容吗?
答案 0 :(得分:1)
您可以使用raw
filter来阻止HTML转义:
{{ some_html|raw }}
或者更好的选择是将其与striptags
filter和白名单<a>
标签一起使用:
{{ some_html|striptags('<a>')|raw }}
在内部,Twig使用PHP strip_tags
function。请注意,其文档有此警告:
警告
此功能不会修改您使用
allowable_tags
允许的标记上的任何属性,包括恶作剧用户可能滥用的样式和 onmouseover 属性发布将向其他用户显示的文字。