没有不值得去解决的问题,也没有不值得去学习的技术!

标签: SyntaxHighlighter

  • 在持续处理 WordPress 历史文章摘要、旧代码格式、SyntaxHighlighter 短代码及中英文覆盖翻译之后,这一轮历史迁移终于正式收尾。最终 67 个固定批次、1281 篇历史文章全部完成,remaining=0、integrity=ok。为准备退役 SyntaxHighlighter Evolved,又重新同步并审计了 1438 篇中文已发布文章,最终只有 14 篇进入人工检查,真正需要迁移到 Code Pro 的文章不到 5 篇。审计工具、配置、测试和历史迁移状态也已完成 Git 收口,503 项测试通过。发布本文前,SyntaxHighlighter Evolved 已正式停用,插件文件暂时保留约 5 天,等待旧页面缓存自然退出后再彻底删除。

  • 将 WordPress 生产环境升级到 PHP 8.5 后,PHP-FPM 日志中出现了多项插件兼容性警告。本文记录对 TMS Extensions for Polylang、Nimble Page Builder、SyntaxHighlighter、Yoast SEO 和 PublishPress Series 的逐项排查:停用已经失去实际用途的 Nimble Page Builder,为 SyntaxHighlighter 实施三处最小兼容性补丁,对无法稳定复现的 Yoast SEO 问题暂不修改,并将 PublishPress Series 的问题提交给上游。整个过程以正常生产环境是否受影响为判断依据,而不是盲目追求清除所有 Deprecated 和 Notice 日志。

  • 在完成 Gutenberg + SyntaxHighlighter 历史文章迁移后,我继续处理 Mixed Gutenberg / Classic + SyntaxHighlighter 文章,并整理出每天固定处理 20 篇的完整 SOP。流程包括 Classic 内容规范化为 Gutenberg、SyntaxHighlighter 转 Code Block Pro、代码语言核对、生产只读验证、中文摘要生成和英文覆盖翻译。经过连续两批共 40 篇真实文章验证,流程同时覆盖了 SSH 超时有限重试、翻译失败单篇 resume,以及 selected_count=0 但批次仍未完成等异常情况,最终形成一套可以长期重复执行的历史文章迁移方案。

  • 本文整理了一套每天批量处理 20 篇 WordPress 历史文章的完整流程,包括 SyntaxHighlighter 向 Code Block Pro 迁移、代码语言核对、生产只读验证、中文摘要生成、英文覆盖翻译、有限重试和失败恢复。本次实操还修复了 Plaintext 行数校验过严,以及 Ctrl + S 被误判为 Markdown 列表的问题,最终完成整个批次,并形成可长期复用的操作规范。

  • 本文记录了将 WordPress 历史文章中的 Gutenberg SyntaxHighlighter 代码块统一转换为 Code Block Pro,并复用既有中文摘要生成与英文覆盖翻译流程的完整实践。通过生产环境只读扫描、固定批次、人工转换、结构验收和状态恢复,第一批 20 篇文章最终全部完成中文摘要写入与英文覆盖翻译。过程中也暴露出批次执行中的网络超时、状态恢复边界和过度设计问题,并据此确定了后续历史文章的标准化处理方案:不同旧格式只负责识别与转换,转换完成后统一进入现有 Gutenberg + Code Block Pro 执行流程,不再重复建设摘要和翻译管线。

  • 针对 Polylang 翻译插件在处理经典编辑器短代码时导致代码格式错乱的问题,文章提出将 SyntaxHighlighter 短代码批量转换为 Gutenberg 区块。通过编写 PHP 函数集成到 WordPress 批量操作,避免了正则表达式和自动转义引发的符号丢失,实现了三十多种编程语言的无损迁移。经测试,转换后的代码块在重新翻译后能保持格式完整。

  • 针对 WordPress 代码块中 Emoji 显示异常的问题,本文分析了数据库字符集不支持及前端图片替换机制导致其转换为 HTML 实体或 img 标签的原因。通过检查并升级核心表字符集为 utf8mb4、在主题 functions.php 中移除相关过滤器、以及手动修正旧文章内容的三个步骤,可彻底解决该问题,确保 Emoji 在前端代码块中原样展示,且适用于代码高亮插件。

  • 文章针对WordPress Gutenberg编辑器处理代码块时效率低下及特殊符号导致报错的问题,从手动调整的繁琐流程出发,探索了一套基于记事本批量替换的自动化转义方案。该方案通过精准替换标记并转义代码内容中的特殊字符,保留了块注释语法,有效解决了编辑器解析失败的问题,实现了“零手动转义”,大幅提升了包含大量代码块文章的编写与发布效率。

  • 针对 WordPress 插件 SyntaxHighlighter Evolved 不支持 Go 语言代码高亮显示的问题,通过查阅官方文档确认默认不支持该语言。解决方法是在插件列表中搜索并安装名为 SyntaxHighlighter Evolved: Go Brush 的扩展插件并启用。经过测试,在网页端重新加载页面后,Go 语言代码段已成功实现高亮显示。

  • 针对 WordPress 4.9.8 环境下 SyntaxHighlighter 3.x 插件显示 HTML 转义字符的问题,通过排查数据库存储记录发现数据本身正常,最终确定根源在于 Gutenberg 编辑器。停用该编辑器后,异常添加的换行标签等问题消失,所有历史文章及新文章显示均恢复正常,表明该问题是编辑器在存储前进行了转义处理且未兼容经典编辑器内容所致。

👨‍💻 个人品牌

王世强|PHP / Go 技术顾问

15+ 年 Web 后端开发经验,专注于系统维护、架构优化、性能调优及 Linux 运维。

持续运营技术博客 10+ 年,累计发布 1000+ 篇原创技术文章。

为创业团队、中小企业及独立开发者提供长期技术支持与远程合作服务。

👉 关于我 & 合作

.env (14) add (16) AI 翻译 (30) Apache (13) Array (19) A Tour of Go (67) Cache (13) CentOS (23) ChatGPT (20) ChatGPT Plus (15) chrome (19) Cloudflare (33) Codex (22) composer (42) composer.json (22) composer install (13) composer update (14) console (16) Container (25) curl (16) delete (31) Docker (32) Dockerfile (15) EdgeOne (33) environment variable (19) error (24) file (15) filter (20) Git (27) GitHub (23) Gitlab (15) GLM-5.2 (26) Go (61) go-tour-i18n (14) Google AdSense (29) Go 语言 (24) GraphQL (24) GraphQL API (14) Gutenberg (34) http (21) https (22) Interface (19) Jquery (13) json (24) Laravel (37) Laravel 6 (55) Laravel 9 (25) Lighthouse (17) Lighthouse 5 (14) Linux (22) Migrate (13) Module (17) MySQL (78) MySQL 5.7 (22) Nginx (63) normalize.css (28) OKX (15) OneinStack (21) PHP (67) php-fpm (19) php.ini (24) PHP 7.1.12 (22) PHP 7.4 (26) phpmyadmin (15) PhpStorm (24) Polylang (57) postman (18) Query (17) queue (16) Rancher (24) Redis (50) response (13) RESTful (27) RESTful API (23) Shopify (19) SlyTranslate (20) SQL (24) String (14) TortoiseGit (14) Twenty Twenty-Five (20) Ubuntu (40) update (20) VPN (17) W3 Total Cache (37) Windows 10 (46) WireGuard (28) WordPress (131) WordPress 多语言 (13) WPCode (23) Wstunnel (15) Yii (40) Yii 2 (70) Yii 2.0 (51) ZgoCloud (13) 多语言翻译 (35) 技术博客 (15) 故障排查 (15) 数据库迁移 (16) 浏览器 (14) 阿里云 (19)

2026 年 9 月
 123456
78910111213
14151617181920
21222324252627
282930