3.9.3
Pre-release
Pre-release
已撤回(2026-09-06):此版本的设置页存在多处无用/重复选项未清理,更新通道已回退到 3.8,暂不推送。已升级到 3.9.3 的站点无需操作,功能正常。后续以 3.9.4 重新发布。
v3.9.3 - 2026-09-05
安全与隐私
- 设置导入、导出、重置只允许管理员操作固定的
wp_china_yesoption;评论置顶接口补充moderate_comments权限与参数校验。 - 每日兼容性报告不再受「云桥更新」开关影响,始终随插件运行;「云桥更新」只控制更新通道降级。
- 数据库工具不再在普通插件加载阶段定义
WP_ALLOW_REPAIR,避免公开数据库修复入口。
稳定性
- 每个服务只由
Service/Base.php初始化一次,修复 Fonts、Comments、Avatar、Adblock 等重复挂钩。 - 修复设置 option 损坏或数组字段变成字符串时的 PHP 8 类型错误,并使设置缓存可以真正清除。
- 保留
jquery-migrate,避免主题和插件依赖链在 WordPress 核心升级后断裂。 - 修复飞行模式保存
url、运行时读取domain的字段不一致;匹配改为精确主机或子域名,不再使用任意子串匹配。 - 停用会在短暂网络故障后静默改写用户设置的旧节点 Monitor;性能优化与系统页脚信息对新安装默认关闭。
- PHP 运行时要求与插件头统一为 7.4,兼容信息更新为实际验证目标 WordPress 7.0。
- 修复维护模式注册了不存在的方法而导致前台和后台 PHP Fatal;管理员、REST 与 AJAX 请求保持可用。
- 修复服务器内存信息在
plugins_loaded之后再次注册同名钩子而始终不生效,并正确处理无限内存限制。 - 修复评论置顶 AJAX 处理器只在评论列表页面加载、实际 AJAX 请求返回
0的问题。 - 移除 PHP 8 专用字符串函数和已废弃的
utf8_decode(),维持声明的 PHP 7.4 兼容性。
发布
- 新增 PHP 7.4–8.4 CI、独立测试入口和包含 Composer 依赖的可重复 ZIP 打包脚本。
- 插件列表操作链接只作用于 WPCY 自身,不再修改所有插件的操作链接。
- 发现可能冲突的旧插件时只提示管理员,不再自动停用其他插件。
- 修复当前 WordPress 后台产生的 jQuery
keydown()、isArray()废弃警告。 - 修复 Git worktree 构建时发布包夹带
.git、composer.json和composer.lock。
移除
- 废弃并移除「前台加速」(
public.admincdn.com)。该功能把站点自己的
/wp-content|/wp-includes路径整体改写到一个共享端点,但wp-content是站点自有内容
(主题、插件、上传文件),共享端点不可能持有各站的这些文件 —— 结果要么 404,要么更糟:
返回别的站的同名文件,使站点静默加载到不属于它的 CSS/JS/图片。返回错内容比返回 404 更有害。
wp-includes部分(核心文件、各站相同)本可保留,但已由「后台加速」覆盖,无需第二条链路。
该选项此前默认关闭,绝大多数站点不受影响;已启用的站点在后台访问时自动摘除该项
(Service/Migration.php),其余加速项不受影响。
修复
- WordPress.org 镜像不可用时不再阻断插件/主题的安装与更新。
filter_wordpress_org()
会把api.wordpress.org与downloads.wordpress.org的请求改写到自家镜像,而该替换
默认开启(store默认为wenpai)。镜像一旦不能提供安装包,站点的插件/主题
搜索、信息查询、安装、更新下载会全链路失效 —— 把可用的上游换成不可用的镜像,
比不加速糟得多。现在改写前先确认镜像确实能提供安装包,不能则原样走 WordPress.org。
镜像恢复后自动重新启用加速。
探测判据同时看状态码与内容类型:镜像故障时会以application/json
({"code":"rest_no_route"})或主题化 HTML 的 404 应答,光看状态码会把坏的判成好的。 - 加速镜像不可用时不再把站点资源一起带死:
admincdn各镜像端点新增健康检测
(Service/MirrorHealth.php),端点不可用时跳过替换、保留原始公共 CDN 链接,
端点恢复后自动重新启用,并在后台提示当前回退状态。
此前替换是无条件的字符串/正则替换,镜像故障会导致站点前端 JS/CSS/字体大面积 404 ——
把可用的公共 CDN 换成失效镜像,比不加速更糟。 - emoji 替换的守卫前置:此前先
remove_action摘掉 WP 自带 emoji 处理再指向镜像,
镜像失效时等于既拿掉核心行为又没有替代品,现改为镜像不可用则完全不接管。 - 后台加速在镜像不可用时不再无谓关闭脚本合并(
$concatenate_scripts),此前有损无益。 - 修复两处无开关控制的硬编码 CDN 依赖:
framework/fields/map(leaflet)与
framework/fields/code_editor(codemirror)此前硬编码jsd.admincdn.com,
不受任何加速开关控制,镜像故障会直接让插件自己的设置界面失效。
现经field_cdn_base()取址,不可用时回退到cdn.jsdmirror.com
(国内可达;cdn.jsdelivr.net自 2021-12 ICP 吊销后国内基本不可用)。 - 修复文风字体接口失效:旧默认字体与
regular/bold/...子集参数已被当前接口移除,
现在使用有效字体族与en/zh/zh-common/full字符集,并取消会强制触发 CORS 校验的属性。