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。插件会清除自身的内部缓存,但缓存插件可能仍会提供旧版本的页面。
每次修改可见设置后:
- 清除缓存插件的缓存
- 如果使用了 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 压缩开启 - 插件会自动排除自身脚本
排查音频缓存未更新的问题
如果您重新生成了文章的音频,但播放的仍是旧音频:
- 清除浏览器缓存(Ctrl+Shift+Delete)
- 清除缓存插件的页面缓存
- 如果使用了 CDN,请清除其缓存
- 强制刷新文章页面(Ctrl+Shift+R)
音频文件的 URL 中包含时间戳,浏览器通常会自动获取新版本。如果没有,说明上述某个缓存仍在提供旧文件。