如何停止CKEditor 3.6.3.7474剥离<script>标签


8

随着Full HTML关启用,相关的过滤器,CKEditor的将剥夺任何<script>从内容被编辑标签。为该特定网站创建内容的编辑者必须能够将这样的内容嵌入到他们正在创建的内容中:

    <img src="http://s2.thingpic.com/images/TD/zKWJQJiFBsp3oP1etNC1.png" width="560" class="alwaysThinglink"/>
<script charset="utf-8" src="//www.thinglink.com/jse/embed.js#286861458501795840"></script>

从理论上讲,我们可以通过禁用CKEditor并直接使用HTML来实现此目的,但实际上不起作用:编辑器不懂HTML。他们足够了解,可以暂时退出RTF模式,粘贴在上面,然后再切换回RTF模式。但是,如果他们再次编辑该内容,则CKEditor <script>在打开内容时会剥离标签。

如何停止该行为并使CKEditor将<script>标签保留在原处?那里有隐藏的设置吗?

顺便说一句,我们将CKEditor与Wysiwyg 7.x-2.1模块结合使用。

是的,一般来说,允许<script>是非常糟糕的,但是在这种情况下,唯一有权访问Full HTML格式的人就是编辑者(受信任的人)。

谢谢!

Answers:


14

您可以通过转到CKEditor配置文件的“高级选项”部分并将以下字符串添加到文本区域中来解决此问题:config.allowedContent = true;

这为我解决了这个问题。


1
我在d8中看不到高级选项,那在哪里?
戴安娜

9

我也遇到了这个问题,这非常令人沮丧。

对我来说,问题出在与所见即所得模块捆绑在一起的Teaser Break插件。为我的Wysiwyg个人资料禁用该按钮可以为我解决问题。

您可以在管理›配置›内容创作›所见即所得配置文件(/ admin / config / content / wysiwyg)中禁用Teaser Break所见即所得插件。

我很想知道这是否还能解决您的问题,或者您是否遇到了其他问题。我刚刚在http://drupal.org/node/1801166上为此提交了一个新的错误。


谢谢!“ config.allowedContent = true;” 没有为我工作。
2014年

2

我认为您正在寻找设置:

  • 页面admin / config / content / ckeditor / edit / advanced(用个人资料名称替换高级)。
  • 标签高级内容过滤器。
  • 设置为禁用。

另外,您可以将其设置为“已启用”,并在“其他允许的内容”中添加脚本标签,但是在允许脚本编写的情况下,您也可以允许任何内容。

此设置来自CKEditor模块,因此在不使用Wysiwyg模块时适用。使用wysiwyg <时,我想您必须找出此设置的作用,可能是在CKEditor中设置了一些选项。

顺便说一句:为什么要在两者之间使用所见即所得,而不要使用CKEditor的全部功能。当CKeditor 4推出时,我停止使用所见即所得,而所见即所得在很长一段时间内都无法提供支持。与我一贯并且仅使用CKEditor一样,在两者之间使用所见即所得有什么意义?


0

您是否检查了“文本格式设置”?这样就不会检查“限制HTML标签”吗?无论如何,我认为没有所见即所得模块的Ckeditor模块更加稳定。


请扩展细节
monymirza

0

古老的旧问题,但是另一种解决方法是默认情况下禁用所见即所得。如果“所见即所得”在编辑模式下没有参与(打开/执行任何操作),则不会删除脚本标签。在我的用例中,这可行。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.