在HtmlPurifiers白名单中添加新属性?

时间:2015-08-18 13:54:39

标签: php security sanitization htmlpurifier

我想向HTMLPurifiers 白名单添加新的允许attribute,而不是重新定义整个白名单,只需在特定标记上添加新的允许值即可。

这是我当前的配置数组:

'posts' => [
    'HTML.SafeIframe' => true,
    'URI.SafeIframeRegexp' => '%^https://www.youtube.com/embed/%',
    'HTML.Nofollow' => true,            
],

根据我的阅读,您应该使用HTML.AllowedAttributes配置选项,您可以执行以下操作:

'posts' => [
    //...
    'HTML.AllowedAttributes' => ['blockquote.data-author']
],

我认为这可以让blockquote现在能够拥有data-author属性?

但是,我想知道什么类型的 htmlpurifier将允许该属性具有?它是否默认对它施加任何限制?

我在添加属性部分的end-user documentation内阅读了允许的值,并指出您可以控制使用addAttribute时允许的属性值方法,但我不确定如何在调用HTMLPurifier_Config::create()时传入配置数组时复制它?

如何做到这一点?

1 个答案:

答案 0 :(得分:1)

创建配置对象,然后在其上调用getHTMLDefinition,然后按照自定义中的说明进行操作。