v2.5.0:分类表升级、assets 直出与一堆清理
概览
这是 WordPress 插件侧的一次结构性更新,重点不在新功能,而在把早期遗留的数据结构与资源加载方式修正。
新增
- 列表每页文章数可配置:设置页新增
cf_posts_per_page,默认取 WP 的posts_per_page; - 「全量导出重建」按钮:重写结构化分类/标签,适合从旧版本升级后修复数据;
uninstall.php:卸载时清理插件选项与日志,不再留垃圾。
变更
分类表升级为复合主键
taxonomies 从 (slug) 主键改为 (type, slug),post_taxonomy 增加 taxonomy_type。
原因:分类和标签可能同名(比如都有一个 news),旧结构会把两者的文章串在一起。
ensure_d1_schema 会幂等检测旧结构并迁移,不需要手工改表。
主题资源改为 assets 直出
以前主题的 CSS/JS/图片要从 R2 逐请求读取。现在部署时把激活主题复制进 worker/static/,由 Cloudflare assets 层直接返回:
- 命中不计 Worker 调用;
- 首字节更快;
- 不再依赖 R2 的读额度。
代价是改主题资源后必须重新部署。
slug 匹配大小写容错
URL 里的大小写变体不再 404。
修复
- 清理了多轮迭代留下的死代码;
- 修正了导出时分类字段与参数顺序不一致导致的错位;
- 修正了 CLI 环境下
home_url()退化为 localhost 的问题。
升级步骤
- 备份数据库;
- 覆盖插件目录;
- 启用后进入设置页,点一次「初始化 / 迁移」;
- 点「全量导出重建」重写分类关系;
- 重建全部单页。
兼容性
- WordPress 5.8+;
- PHP 7.4+;
- 需要 Cloudflare 账号(D1 + R2);
- 与旧版的 D1 表结构兼容,迁移是单向的(升级后不要回退到 2.4.x)。