将新属性添加到 HtmlPurifiers 白名单?

Adding a new attribute to HtmlPurifiers whitelist?

我想在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 属性?

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

我阅读了 添加属性 部分下 end-user documentation 中的允许值,它指出您可以控制在使用addAttribute 方法,但是我不确定在调用 HTMLPurifier_Config::create()?

时传入配置数组时如何复制它

如何做到这一点?

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