htmlpurifier
удаляет атрибуты, если значение не разрешено.Например;
<div contenteditable="true"></div>
Я установил разрешения для тегов div для атрибута contenteditable
, поэтому значение может быть только false
.Но если contenteditable="true"
или что-то отличное от false
, htmlpurifier
полностью удалит атрибут.Мне не нравится это поведение.Я бы хотел, чтобы htmlpurifier
всегда сохранял атрибут contenteditable
и устанавливал его на false
.
Это возможно?
Фактические настройки
$config = \HTMLPurifier_Config::createDefault();
$config->set('HTML.Allowed', 'div[contenteditable]');
$config->set('HTML.TargetNoopener', false);
$config->set('HTML.TargetNoreferrer', false);
$def = $config->getHTMLDefinition(true);
$def->addAttribute('div', 'contenteditable', 'Enum#false');
Результат с этими настройками
Ввод:
<div contenteditable="true"></div>
Выход:
<div></div>
Желаемые результаты
Ввод:
<div contenteditable="true"></div>
Выход:
<div contenteditable="false"></div>