【发布时间】:2016-04-27 19:16:46
【问题描述】:
我正在寻找一个好的解决方案,使最终用户可以在模板占位符中插入 iframe (Soundcloud)。我考虑过使用 djangocms-txt-ckeditor 插件。 在 documentation 中,它说使用可配置的消毒剂来完成此操作:
djangocms-text-ckeditor 使用 html5lib 清理 HTML 以避免安全问题 >并检查正确的 HTML 代码。清理可能会去除对某些用例有用的标签,例如 iframe;您可以通过>覆盖 TEXT_ADDITIONAL_TAGS 和 TEXT_ADDITIONAL_ATTRIBUTES 设置来自定义标签和属性:
TEXT_ADDITIONAL_TAGS = ('iframe',)
TEXT_ADDITIONAL_ATTRIBUTES = ('scrolling', 'allowfullscreen', 'frameborder')
我确实像这样在我的项目中编辑了 settings.py 并重新启动了我的网络服务器 (nginx)。但是消毒剂仍在包装它以避免html插入。
我想避免仅为此目的编写 SoundCloud 插件。
欢迎提出任何建议。
【问题讨论】:
-
我制作了一个 django-cms 插件供您使用。 github.com/mishbahr/djangocms-embed
-
@mishbah 感谢您的建议。我会看看。尽管我确实希望在没有任何额外插件的情况下实现这一目标。
-
你安装了哪个版本的 djangocms_text_ckeditor?使用 2.8 版,我可以创建 iframe,将您上面引用的设置添加到项目设置中
-
我目前使用的是 2.7.1 版本。我现在正在考虑更新。
标签: python django django-templates django-cms djangocms-text-ckeditor