You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在特定MODX页面添加CSS与JS?解决TinyMCE拦截问题

解决方案:MODX页面插入MailChimp代码绕过TinyMCE拦截

针对你遇到的问题,这里有三个实用的最优方案:

方案1:Chunk+极简Snippet组合(推荐)

这是MODX里最灵活且安全的方式,能精准控制代码插入位置,还能复用代码:

  • 先创建一个Chunk(比如命名为MailchimpNewsletterCode),把你的CSS和JS代码完整粘贴进去,包括<style>和<script>标签以及document.write的内容。
  • 再创建一个极简Snippet(比如OutputMailchimpCode),代码只需要一行:
    return $modx->getChunk('MailchimpNewsletterCode');
    
  • 回到TinyMCE编辑的目标页面,在你需要插入代码的位置,直接插入Snippet标签 [[!OutputMailchimpCode]],页面渲染时就会把代码输出到指定位置,完全不会被TinyMCE拦截。

方案2:调整TinyMCE配置允许标签

如果只是单个页面需要插入,且信任后台编辑者,可以直接修改TinyMCE的过滤规则:

  • 进入MODX管理器的「系统设置」,搜索tinyhtml_valid_elements
  • 在原有配置值的末尾添加,<style>,<script>[*](注意前面的逗号)
  • 保存后回到页面编辑,就能直接在TinyMCE里粘贴<style>和<script>代码,不会再被拦截。

注意:这个设置是全局的,所有用TinyMCE的页面都会允许这些标签,若有非可信用户编辑页面,谨慎使用。

方案3:用Raw类型的Template Variable(TV)

适合单个页面定制代码,无需写Snippet:

  • 创建一个新的TV,名称比如CustomMailchimpCode,类型选择「Textarea (Raw)」——这种类型的TV不会经过任何过滤,直接保存原始代码。
  • 打开目标页面的模板,在需要插入代码的位置添加标签 [[*CustomMailchimpCode]]
  • 编辑目标页面时,切换到「TV」标签页,把你的CSS和JS代码粘贴到这个TV的输入框里,保存即可。

内容的提问来源于stack exchange,提问作者Bijan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 10:25:27