ole*_*leq 41
我假设你使用高级内容过滤器(ACF)附带的CKEditor 4.1.x. 最有可能的是,您使用不同的编辑器进行前端/后端编辑.
每个插件都使用自己的标记,属性和类规则扩展了allowedContent属性.使用这些规则,编辑器会自动删除不需要的内容,因此,例如,如果您的前端编辑器允许,<iframe>因为它已加载了mediaembed插件,那么没有此插件的后端编辑器<iframe>将从内容中删除您的内容.
此外,ACF还会观察您的工具栏配置,因此即使您包含插件但又不想使用工具栏中的按钮,按钮提供的任何内容(即<iframe>)也将在编辑器的输出中被禁止.
您可以轻松检查您的编辑是否接受<iframes>.基本上调用以下内容并查看输出:
CKEDITOR.instances.yourInstance.filter.check( 'iframe' );
>>> true // it's allowed
Run Code Online (Sandbox Code Playgroud)
如果是false,那么有几种解决方案可以解决您的问题:
config.extraAllowedContent再次回来.虽然第一个解决方案很简单,但第二个解决方案对您来说可能很棘手.allowedContentmediaembed插件的规则如下(参见插件的代码):
allowedContent: 'iframe[*]' // stands for: iframe element with any attribute
Run Code Online (Sandbox Code Playgroud)
如果您将以下内容添加到后端编辑器的配置中,您将在内容中添加iframe而不加载mediaembed插件:
config.extraAllowedContent = 'iframe[*]'
Run Code Online (Sandbox Code Playgroud)
如果此解决方案不适合您,请提供编辑器配置和CKEditor版本,以便人们可以帮助您.
| 归档时间: |
|
| 查看次数: |
26760 次 |
| 最近记录: |