在CKEditor中,配置中有allowedContent
和extraAllowedContent
个选项。我了解allowedContent
如何让您说出ACF会留下哪些标签和属性,但为什么allowedContent
和extraAllowedContent
?他们做同样的事情吗?
我发现的一件事是,如果你想iframe[*]
放入extraAllowedContent
,那么想要允许iframe似乎只会起作用。如果将它放在allowedContent
中,它就不起作用。
为什么呢?有什么区别?
答案 0 :(得分:3)
设置allowedContent
手动指示编辑器完全忽略已启用插件指定的允许标记(例如列表插件“注册”<ul>
和<li>
标记)。它可能会导致从CKEditor中删除功能。例如,如果您使用标准预设并且只允许iframe[*]
,则大多数按钮将从工具栏中“消失”(如粗体,列表,表格),因为您不再允许使用{{1}等元素},<strong>
,<ul>
等等。
<li>
,顾名思义,允许您扩展CKEditor默认允许的允许标记/属性列表。默认情况下,CKEditor支持的内容取决于您启用的功能。
以下链接解释得非常好:https://docs.ckeditor.com/ckeditor4/docs/#!/guide/dev_acf
我发现的一件事是,当你想要允许iframe时,如果你把iframe [*]放在extraAllowedContent中,它似乎才有效;如果你把它放在allowedContent中就行不了。
看起来你在代码中犯了一个错误,因为我刚检查了这种情况并且它按预期工作(iframe元素留在内容中,所有其他标记都被删除,大多数工具栏按钮都消失了)。
最后但并非最不重要的是,不要只使用extraAllowedContent启用iframe元素,而应考虑向CKEditor添加另一个正确处理编辑iframe(https://ckeditor.com/cke4/addon/iframe)的插件。如果将其添加到构建中,它将自动允许extraAllowedContent
个元素。