CosHtmlCache插件-修改一行代码支持文章禁止缓存功能

» WordPress » CosHtmlCache插件-修改一行代码支持文章禁止缓存功能

通过修改插件代码,可以实现某篇文章禁止被缓存,避免文章部分功能失效。

CosHtmlCache插件-修改一行代码支持文章禁止缓存功能-极客公园

前言

说明

大家都知道缓存是个好东西,但是缓存会让你的文章部分功能失效,比如回复可见,密码可见等待,因为这几天需要文章添加小功能,所以必须向解决缓存这个大问题,不然都是瞎说,所以云落重新读了读源代码,发现好像也没有那么困难的。

思路

首先这个插件是有一个特点的,那就是只缓存首页和文章页,其他页面不去缓存的,如何实现这个功能的呢?插件是使用一个注释代码来解决的,就是会在文章页和首页添加 <!--cos-html-cache-safe-tag--> 这个标签,而在其他页面是没有这个标签的,有标签就有缓存,没有标签就没有缓存的。另外这款插件也设定了几个不去缓存的文章类型,比如加密文章就不去缓存的。我的思路就是和插件差不多,添加一个标签就不去缓存,我加的标签是<!--no-cache->,另外把这个标签添加到编辑器按钮上面,叫禁止缓存,如果某篇文章不想被缓存,就可以添加这个标签的,因为是注释代码,所以是不会显示出来的。

代码

在插件里面搜索一下代码

if( !substr_count($buffer, '<!--cos-html-cache-safe-tag-->') ) return  $buffer;

替换成下面的代码

if( !substr_count($buffer, '<!--cos-html-cache-safe-tag-->') || substr_count($buffer, '<!--no-cache-->') > 0) return  $buffer;

使用

在某篇文章底部添加<!--no-cache-->标签就可以了,比如这篇文章就是禁止缓存的。

后语

好多年没更新的插件了,现在还能用,说不定哪天就不能用了,那天不能用了,估计就是我换插件的时候了。

-- 完 --

发表评论

电子邮件地址不会被公开。 必填项已用*标注

15 Replies to “CosHtmlCache插件-修改一行代码支持文章禁止缓存功能”

  1. 我昨天也用cos-html-cache了,就是一个问题那就是 WordPress 的分类前缀好像不能取消,一旦取消的话,cos-html-cache生成的缓存文件里访问目录就出现403错误!

    博主,这个又解决办法嘛?

      1. @云落 是的,这个是 WordPress 下 wooCommerce 插件的商品链接,支持非常完美的!我说的是 WordPress 文章“分类目录”前面那个默认的分类目录前缀“category”,我看你用的前缀是“archives”,我是在 WordPress “固定链接”的“分类目录前缀”里输入“.”取消掉了这个前缀的显示的,这时候访问目录链接就会出现403错误,必须又默认前缀才正常的!