如何允许Drupal 10站点内容编辑器在CKEditor 5中添加JavaScript代码?
Drupal 10 CKEditor 5 保留JavaScript代码解决方案
1. 修改文本格式的HTML过滤器设置
- 后台路径:
/admin/config/content/formats,找到目标文本格式(如「富文本」)点击「配置」 - 找到「限制允许的HTML标签并纠正错误的HTML」过滤器,点击「配置」
- 在「允许的HTML标签」中添加
<script>(若需支持script标签) - 取消勾选「将特殊字符转换为HTML实体」选项,避免JS特殊字符被自动转义
- 按需在「允许的HTML属性」中添加script标签所需属性(如
src,type)
- 在「允许的HTML标签」中添加
2. 配置CKEditor 5源代码编辑插件
- 同文本格式配置页,在「编辑器配置」的「工具栏配置」中,确保「源代码编辑」插件已启用并加入工具栏
- 点击插件的设置按钮,在「允许的标签」中明确包含
<script>,或设置为允许所有标签(仅信任编辑者时使用),否则源代码模式下的script标签会被过滤
3. 排除其他过滤器干扰
- 检查当前文本格式启用的其他过滤器(如「转换换行符为HTML」),确保它们不会修改
<script>标签内的内容 - 若有自定义过滤器,确认其逻辑不会转义JS特殊字符
4. 验证效果
- 进入内容编辑页,切换到CKEditor 5源代码模式,输入测试代码:
<script>if (x > 0 && y < 10) { console.log('test'); }</script> - 保存后查看前端源代码,确认
>、&&等字符未被转义为>、&&
内容的提问来源于stack exchange,提问作者kevinius
相关产品推荐
相关产品推荐

