我正在努力扩展WordPress中的可视化编辑器,这只是TinyMCE:
我正在使用以下结构:
<section>
<controls></controls>
<content>
<column class="one-third">
</column>
<column class="two-thirds">
</column>
</content>
</section>
问题在于,当我尝试将文字从Paragraph
更改为Header
时,没有任何反应:
我已将问题跟踪到使用自定义元素。当我更改代码以使用此结构时,问题就消失了:
<section>
<controls></controls>
<article>
<div class="one-third">
</div>
<div class="two-thirds">
</div>
</article>
</section>
我尝试将column
和content
添加到extended_valid_elements
和custom_elements
列表中,但效果为零。
$init['custom_elements'] = 'content[*],column[*]';
$init['extended_valid_elements'] = 'content[*],column[*]';
有什么东西突然爆发,我做错了吗?有没有办法绕过这个,或强迫TinyMCE将我的自定义元素视为有效?
答案 0 :(得分:1)
在custom_elements
声明中,您使用content[*], column[*]
代替content, column
。虽然extended_valid_elements
确实需要声明属性,但custom_elements
却没有。
根据TinyMCE文档:https://www.tinymce.com/docs/configure/content-filtering/#custom_elements
改变这个:
$init['custom_elements'] = 'content[*],column[*]';
$init['extended_valid_elements'] = 'content[*],column[*]';
对此:
$init['custom_elements'] = 'content,column';
请注意,逗号分隔的列表中不包含空格至关重要。
'content,column';
&lt; ---有效。
'content, column';
&lt; --- 不起作用。