Tinymce 我能';t获取htmlpurifier以允许锚定(带有name属性的标记)

Tinymce 我能';t获取htmlpurifier以允许锚定(带有name属性的标记),tinymce,htmlpurifier,Tinymce,Htmlpurifier,我真的无法让htmlpurifier允许标记上的名称属性。我想让tinyMCE与锚一起工作。我想name属性不推荐使用,应该使用id,但是tinyMCE会生成name属性。我是否可以将它们转换为id=”“或接受它们 接下来,我尝试了这个,但不起作用 require_once( 'HTMLPurifier.standalone.php' ); $config = HTMLPurifier_Config::createDefault(); $config->set( 'HTML.Docty

我真的无法让htmlpurifier允许标记上的名称属性。我想让tinyMCE与锚一起工作。我想name属性不推荐使用,应该使用id,但是tinyMCE会生成name属性。我是否可以将它们转换为id=”“或接受它们

接下来,我尝试了这个,但不起作用

require_once( 'HTMLPurifier.standalone.php' );

$config = HTMLPurifier_Config::createDefault();

$config->set( 'HTML.Doctype'        , 'XHTML 1.0 Transitional'  );
$config->set( 'Cache.DefinitionImpl', null                      ); // remove this later!
$config->set( 'Core.CollectErrors'  , true                      );

$def = $config->getHTMLDefinition( true );

$def->addAttribute( 'a', 'name' , 'ID'    );
// $def->addAttribute( 'a', 'name' , 'CDATA' ); // does not work either
// $def->addAttribute( 'a', 'name' , 'Text'  ); // does not work either


$purifier = new HTMLPurifier( $config );

$purifier->purify( '<a name="test"></a>' );

echo $purifier->context->get( 'ErrorCollector' )->getHTMLFormatted( $config );


// output:

//     Error Line 1, Column 0: name attribute on <a> removed
require_一次('HTMLPurifier.standalone.php');
$config=HTMLPurifier_config::createDefault();
$config->set('HTML.Doctype','XHTML1.0过渡版');
$config->set('Cache.DefinitionImpl',null);//请稍后删除此文件!
$config->set('Core.CollectErrors',true);
$def=$config->getHTMLDefinition(真);
$def->addAttribute('a','name','ID');
//$def->addAttribute('a','name','CDATA');//也不行
//$def->addAttribute('a','name','Text');//也不行
$punizer=新的HTMLPurifier($config);
$purizer->purify(“”);
echo$punizer->context->get('ErrorCollector')->getHTMLFormatted($config);
//输出:
//错误行1,第0列:已删除上的name属性


(哦,请删除自定义HTML定义和声明。)

您好,非常感谢您的回复。我可以让它接受ID,但tinymce至少在wp中不会生成带有ID属性的锚。它生成name=“something”属性。我想知道它们是否可以被重写或接受。好的,现在我意识到你不需要html定义。这是否意味着无法将id的权限限制为仅锚定元素?如中所示,您不希望允许人们指定id=“”?嗯,你可以从属性列表中禁止它。主要是我想把
mlkj
翻译成
mlkj
,因为这就是tinymce的产品。作为第二个问题,我想知道允许
但不允许
的可能性。因为我认为允许脚注带有锚定是有意义的,但在其他方面允许id没有多大意义。我回答了后一个问题。HTML净化器不支持前者,尽管我认为这是一个简单的转换。