You need to enable JavaScript to run this app. WordPress博客中SQL查询的正确格式化方法 解决代码预览乱码
优惠活动
大模型
产品
解决方案
定价
更多

WordPress博客中SQL查询的正确格式化方法 解决代码预览乱码

异常原因

现在出现的转义乱码,是因为代码高亮功能要输出的样式标签,被WordPress的内容过滤机制当成普通文本转成了实体字符,常见触发点:

  • 编辑器解析冲突:古腾堡编辑器会自动给普通段落块里的短代码加转义,导致短代码根本没被正常执行
  • 短代码参数不匹配:你所用的[sourcecode]短代码对应的插件,不认sql这个语言标识,没触发高亮逻辑
  • 第三方插件拦截:安全类、内容优化类插件把代码块生成的样式标签当成非法HTML,强制做了转义
正确的SQL代码格式化操作
  • 用经典编辑器的场景
    • 一定要切到文本编辑模式再粘短代码,别在可视化模式下粘,否则编辑器会自动给内容加转义
    • 先把语言参数从sql换成mysql测试,很多旧版代码高亮插件不认sql,但能正常识别mysql,替换后写法是:
      [sourcecode language="mysql"]
      create external schema spectrum 
      from data catalog 
      database 'spectrumdb' 
      iam_role 'arn:aws:iam::123456789012:role/mySpectrumRole'
      create external database if not exists;
      [/sourcecode]
      
  • 用古腾堡编辑器的场景
    • 别把短代码直接粘到普通段落块,要插专门的「短代码」块再贴内容,从根源绕开编辑器的自动转义规则
    • 更建议直接用古腾堡自带的代码块、或者代码高亮插件提供的专用代码块组件,不用依赖旧的[sourcecode]短代码,这类组件会自动处理SQL的语法高亮,不会出转义问题
  • 换了参数还是转义的排查方法
    • 先临时停掉所有安全类、内容压缩类插件再预览,如果显示正常,就逐个重启插件,找到哪个插件在拦内容,把代码块生成的span.hljs-*类标签加到这个插件的白名单里就行
    • 顺便检查下SQL内容里有没有夹带尖括号、特殊HTML字符,这类字符很容易触发过度过滤

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.28 14:06:09