Я хочу добавить атрибут target="_blank" для всех элементов A или изменить значение на "_blank", если оно отличается. Возможно ли это с помощью HTMLPurifier? Я не мог найти никакой информации или документации об этом в Интернете. Например;
Вход
<a href="some_url">Link 1</a>
<a href="some_url" target="_self">Link 2</a>
<a href="some_url" target="_blank">Link 3</a>
Текущий выход
<a href="some_url">Link 1</a>
<a href="some_url">Link 2</a>
<a href="some_url" target="_blank">Link 3</a>
Желаемый результат
<a href="some_url" target="_blank">Link 1</a>
<a href="some_url" target="_blank">Link 2</a>
<a href="some_url" target="_blank">Link 3</a>
Текущие конфигурации
$config = \HTMLPurifier_Config::createDefault();
$config->set('HTML.Allowed', 'a[href|target]');
$config->set('Attr.AllowedFrameTargets', array('_blank'));
Я не спрашиваю: «Как я могу разрешить пользовательские теги?». Проблема заключается в том, «Могу ли я манипулировать значением атрибута с помощью HTMLPurifier, если значение отличается от _blank
?».
HTML.TargetBlank
? Это только для исходящих ссылок, а в остальном то, что вы ищете. Если этого недостаточно, вы можете посмотреть stackoverflow.com/q/2638640/245790. о добавлении (или перезаписи)target="_blank"
. - person pinkgothic   schedule 10.11.2018