缓存插件

3 min read

TTSWP 兼容所有主流缓存插件:WP Rocket、LiteSpeed Cache、W3 Total Cache、WP Super Cache、Cache Enabler 等。插件会自动将其 JavaScript 和 CSS 文件添加到缓存排除列表。

TTSWP 自动配置的内容

检测到受支持的缓存插件时:

  • TTSWP JS 文件标记为"不压缩/合并"(防止播放器损坏)
  • TTSWP CSS 文件允许正常合并
  • TTSWP 管理栏菜单脚本始终获取最新版本(以反映实时套餐变更)
  • 音频文件(MP3)不包含在 HTML 页面缓存中(它们有自己的过期标头)

无需手动设置。激活 TTSWP 后自动生效。

已测试支持的缓存插件

  • WP Rocket
  • LiteSpeed Cache
  • W3 Total Cache
  • WP Super Cache
  • Cache Enabler
  • Hummingbird
  • Swift Performance
  • Autoptimize

修改设置后清除缓存

当您更改颜色、播放器位置或语音设置时,前端需要加载最新的 CSS 和 JS。插件会清除自身的内部缓存,但缓存插件可能仍会提供旧版本的页面。

每次修改可见设置后:

  1. 清除缓存插件的缓存
  2. 如果使用了 CDN(Cloudflare、BunnyCDN 等),也请一并清除

对象缓存

如果您的站点通过对象缓存插件使用 Redis 或 Memcached,TTSWP 会对以下内容使用相同的缓存:

  • 来自 ElevenLabs 的语音列表(1 小时)
  • 来自 app.ttswp.com 的账单数据(24 小时)
  • 使用统计(5 分钟)

无需额外操作。对象缓存可加快管理页面加载速度。

页面缓存与音频播放器

页面缓存与 TTSWP 兼容。播放器 HTML 对每篇文章是静态的(不会因访客不同而变化)。音频文件从独立 URL 加载,不受页面缓存影响。

需要注意的一种情况:

已登录用户与匿名用户混合缓存

某些缓存插件会向已登录管理员和匿名访客提供相同的缓存页面。这可能导致仅管理员可见的元素(例如管理栏菜单)对所有人显示。大多数插件默认情况下可正确处理此问题。

已知缓存插件设置

LiteSpeed Cache

  • 如果有 Redis 或 Memcached 可用,请启用对象缓存(加快管理速度)
  • 在管理页面上保持JS 合并禁用
  • 插件自动将 mementor-tts-admin.js 排除在优化之外

WP Rocket

  • 无需手动添加排除项
  • 插件在其脚本上使用 data-no-optimize="1" 属性

W3 Total Cache

  • 为前端音频页面启用页面缓存
  • 保持JS 压缩开启 - 插件会自动排除自身脚本

排查音频缓存未更新的问题

如果您重新生成了文章的音频,但播放的仍是旧音频:

  1. 清除浏览器缓存(Ctrl+Shift+Delete)
  2. 清除缓存插件的页面缓存
  3. 如果使用了 CDN,请清除其缓存
  4. 强制刷新文章页面(Ctrl+Shift+R)

音频文件的 URL 中包含时间戳,浏览器通常会自动获取新版本。如果没有,说明上述某个缓存仍在提供旧文件。

相关页面