2012-02-28 1 views
1

Я хочу, чтобы пользователи могли использовать тег <vid>Link</vid>, поэтому я добавил «vid» в HTML.AllowedElements в config очистителя, поэтому он бросает мне сообщение о том, что он не знает такого тега и указывает мне на http://htmlpurifier.org/docs/enduser-customize.html Так что я пытался использовать следующий код:HTMLPurifier addElement синтаксис

$config = $config->getHTMLDefinition(TRUE); 
$config->addElement('vid', 'Block', 'Empty', 'Common', array()); 

Но <vid>Link</vid> тег вскрыши. Что я делаю неправильно?

ответ

1

Не используйте «Пусто». Кроме того, ваш код устарел.

<?php 
include_once 'library/HTMLPurifier.auto.php'; 
$config = HTMLPurifier_Config::createDefault(); 
$config->set('HTML.DefinitionID', 'test'); 
$config->set('HTML.DefinitionRev', 1); 
if ($def = $config->maybeGetRawHTMLDefinition()) { 
    $def->addElement('vid', 'Block', 'Inline', 'Common', array()); 
} 
$purifier = new HTMLPurifier($config); 
echo $purifier->purify("<vid>Link</vid>\n"); 
+0

Спасибо, это работает. Я обновил мою очистительную библиотеку до 4.4.0, я использую 4.3.0 – nazarov