美工学习 发表于 2023-12-2 10:18:14

使用WP Super Cache予取予求地刷新指定页面静态缓存

WP Super Cache是我一直以来都在使用的超级缓存插件,他可以帮我们的网站快捷的打开静态缓存,从而大大提高访问速度,节约服务器资源。本人切身感受,同一台服务器,在所有的WP网站都启用静态缓存,并且把图片视频字体等静态资源存入CDN后,服务器的利用率可以提高80%甚至更多。这款插件的设置技巧,搜索引擎上能找到一大堆,本文就不重复了。本文讨论在某些应用场景下,如何有效地刷新单个页面的缓存。举个例子,一些博客网站有点赞功能,点赞的数据一般我们会作为一个文章自定义字段存储在数据库中,而页面上显示的赞数是在静态缓存页面里的,访客新点了一个赞,数据库里面的那个数字是+1了,但缓存过的页面并不会刷新这个数字,你按多少次F5都没用。这时候我们就需要手动刷新一下显示这个赞数的页面静态缓存。访客不能进入网站后台,他自己如何刷新页面静态缓存呢?可以通过以下代码实现:if (function_exists ('wp_cache_post_change')) {
        $GLOBALS["super_cache_enabled"]=1;

        //指定id为555的页面
        $id = 555;
        wp_cache_post_change($id);

        //指定网站首页
        wp_cache_post_change( get_option('page_on_front') );
}“wp_cache_post_change”这个函数是WP Super Cache所带的,他通过参数$id来刷新单个页面的静态缓存,可以说指哪打哪。把以上代码加入到执行点赞的那个类库/钩子中去,就可以不动声色地刷新指定页面缓存了。

页: [1]
查看完整版本: 使用WP Super Cache予取予求地刷新指定页面静态缓存