如何在 django-cms 中使用 iframe

How to use iframes in django-cms

我正在寻找一个好的解决方案,使最终用户可以在模板占位符中插入 iframe (Soundcloud)。我考虑过使用 djangocms-txt-ckeditor 插件。 在其中 documentation 它说使用可配置的消毒剂来完成这个:

djangocms-text-ckeditor uses html5lib to sanitize HTML to avoid security issues >and to check for correct HTML code. Sanitisation may strip tags usesful for some >use cases such as iframe; you may customize the tags and attributes allowed by >overriding the TEXT_ADDITIONAL_TAGS and TEXT_ADDITIONAL_ATTRIBUTES settings:

TEXT_ADDITIONAL_TAGS = ('iframe',)
TEXT_ADDITIONAL_ATTRIBUTES = ('scrolling', 'allowfullscreen', 'frameborder')

我确实在我的项目中编辑了 settings.py 并重新启动了我的网络服务器 (nginx)。但消毒剂仍在包裹它以避免 html-插入。

我想避免只为此目的编写 SoundCloud 插件。

欢迎提出任何建议。

正如@yakky 在评论中所建议的那样,我确实更新了 Django 环境以在 2.8.1 版中使用 "djangocms_text_ckeditor"。

在我的 settings.py 中使用此设置时效果很好:

TEXT_ADDITIONAL_TAGS = ('iframe',)
TEXT_ADDITIONAL_ATTRIBUTES = ('scrolling', 'allowfullscreen', 'frameborder', 'src', 'height', 'width')

(soundcloud) iframe 出现了,没有出现进一步的问题。

注意:更新您的环境可能会导致失败。始终先在开发环境中尝试。