前言
之前也跟大家分享过一些关于 WordPress 缓存的相关文章,为了更加快的速度,今天跟大家分享一下 WordPress 菜单缓存 Menu Cache 提升网站速度。
实际上这些菜单在网站中基本上定了就很少有改动,可以说菜单更改非常罕见,这使它们很容易成为缓存的目标。所以 WPEXP 认为 WordPress 优化网站速度可以缓存菜单,缓存生成的菜单 HTML 将防止所有这些不必要的数据库调用,并大大缩短页面加载时间。
我们知道,WordPress 菜单调用数据库对网站速度有一定的影响,而数据库调用是 WordPress 的主要性能瓶颈。虽然我们可以通过内存缓存加速,但是发现菜单在 WordPress 数据库的中至少分散在六个不同的表中:在“wp_terms
”、“wp_term_taxonomy
”和“wp_options
”表中,我们将找到菜单 ID、slug 和主题位置。然后使用“wp_posts
”和“wp_postmeta
”来查找菜单的导航项及其元数据。在 metas 中,我们会找到它的目标对象,所以让我们再次访问 ‘wp_terms
’ 或 ‘wp_posts
’ 来找到菜单项的目标和 ‘wp_termmeta
’ 来找到它的 metas。这些是很多表,甚至更多的数据库调用!收集完所有必需的数据后,将创建菜单 HTML 并将其显示给用户。
运行机制
每当用户访问带有菜单的页面时,WordPress 都会从数据库中收集所有菜单数据,然后创建菜单的HTML。在此生成的 HTML 返回给用户之前,HTML 将暂时保存在数据库中。下次用户请求此特定菜单时,将返回保存的 HTML,而不是从头开始创建菜单。
插件完整功能列表
- 缓存所有 WordPress 菜单以缩短页面加载时间。
- 启用/禁用每个菜单的缓存。
- 使用设置页面上的按钮清除所有菜单缓存。
- 每次编辑菜单时,都会自动清除其缓存。
- 所有缓存的数据每 10 小时自动清除一次,以保持所有内容的新鲜度,如nonces等。
- 与缓存插件兼容,如 WPRocket,W3 Total Cache 等。
- 与大多数翻译插件兼容。使用 WPML 和 TranslatePress 测试正常。
暂无评论内容