Xiu主题启用wp super cache插件后实现有新评论删除缓存

Author: 陌小雨Date: 2015-08-03View: 131

陌小雨启用wp super cache插件后发现网页速度打开确实快了许多,但对于摆脱不了折腾毛病的陌小雨来说,还是时不时的添加一些特色功能,比如陌小雨刚刚又给自己的博客添加了评论博主标示,只要是陌小雨回复的评论后面都有一个尊贵的admin标示,如下图:
admin

但是来访的博友是实时看不到陌小雨新增加的效果的,陌小雨也只有登录后台后才可以看到,所以就有必要实现这样的功能:有新评论时删除文章或页面缓存。在wp super cache插件后台有一个选项:
cache

 

 

陌小雨发现勾选该功能后,并不能实现想要的效果。于是想到了张戈同学曾经分享过的代码版的wp super cache后一些优化措施,依葫芦画瓢,陌小雨找到了xiu主题下的实现该功能的办法。

首先要在主题文件comments.php中查找下面代码:

do_action('comment_form', $post->ID);

在该串代码下面新增以下代码即可:

//有人评论将自动删除已存在缓存
$post_data = get_post($post->ID, ARRAY_A);
$slug = $post_data['post_name'];
$cache_s = WP_CONTENT_DIR."/cache/supercache/".$_SERVER['SERVER_NAME']."/".$post->ID.".html/index.html";
$cache_sd = WP_CONTENT_DIR."/cache/supercache/".$_SERVER['SERVER_NAME']."/".$post->ID.".html";
$cache_p = WP_CONTENT_DIR."/cache/supercache/".$_SERVER['SERVER_NAME']."/".$slug."/index.html";
$cache_pd = WP_CONTENT_DIR."/cache/supercache/".$_SERVER['SERVER_NAME']."/".$slug;
if (file_exists($cache_s)) {
    unlink($cache_s);
    rmdir($cache_sd);
 }
if (file_exists($cache_p)) {
    unlink($cache_p);
    rmdir($cache_pd);
    }

为啥插件自带的不能起作用呢,可能是与xiu主题启用了ajax评论有关。其他主题的可以找找类似的代码就行。