ardabeyazoglu / htmlpurifierx
在原始HTMLPurifier库周围提供一个垫片,以允许更多定制
1.0.3
2021-07-11 16:12 UTC
Requires
- php: >=5.2
- ezyang/htmlpurifier: ^4.13
Requires (Dev)
README
HTMLPurifierX是原始ezyang/htmlpurifier库的一个小型包装,提供了一些额外的定制选项。它也与xemlock/htmlpurifier-html5兼容。
它扩展了配置选项,允许以下功能,因为这些功能在其他情况下无法完成,因为htmlpurifier遵循基于白名单单个元素和属性的设计原则。
-
允许元素上所有的data-*属性,因为它们是无害的并且经常被使用。
$configObject->set("HTML.AllowDataAttributes", true); -
允许元素上像"xxx:yyyyyy"这样的命名空间属性,因为它们在现代框架中被使用。
$configObject->set("HTML.AllowNamespacedAttributes", true); -
允许所有满足正则表达式的自定义元素名称,因为它们在Web组件和现代框架中广泛使用。一个常见的用例是允许所有具有用户定义前缀的元素。
$configObject->set("HTML.AllowCustomElements", true); // default "": means allow all custom elements. $configObject->set("HTML.AllowCustomElementsRegex", "/^x-/");
查看示例以了解其工作原理。
安装
composer require ardabeyazoglu/htmlpurifierx
如果尚未安装,此操作还会安装原始ezyang/htmlpurifier库。
为什么不创建分支?
这里所做的定制可能与原始库的设计原则相冲突。作为额外层提供它们更容易、更快。
许可证
LGPL(与原始库相同)