开发者

htmlpurifier custom attributes

How to allow custom (html5 data-*) attributes in HtmlPurifier?

Input:

<img src="/my.jpg" data-type="5" alt="" />

leads to an error:

Attribute 'data-type' in element 'img' not supported 
(for information on implementing this, see the support forums) 

HtmlPurifier options are set to:

'HTML.AllowedAttributes' => array('img.src', 'a.href', 'img.data-type开发者_Python百科')


HTML purifier defines the matrix of attributes that are standard compliant and complains when you try to use an attribute that it is not defined in this matrix. However, you can add new attributes to the default definition using the function HTMLDefinition::addAttribute() as follow:

$config = HTMLPurifier_Config::createDefault();
$def = $config->getHTMLDefinition(true);
$def->addAttribute('img', 'data-type', 'Text');
$purifier = new HTMLPurifier($config);

See the definition of HTMLDefinition::addAttribute for more details. 'Text' here is the attribute type, you can find the default attribute type from AttrTypes.php

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜