让WP-PostViews与cos html cache和平共处

2013/12/10

wordpress计数插件与cos html cache静态化插件不兼容是个老问题了。点金主题网改版后同样遇到这个问题:

[message_box style=”error” icon=”yes” hide=”yes” width=”500″] wordpress插件cos html cache启用后,postviews就实现了。即静态化后,计数功能无效。 [/message_box]

 

一、关于这个问题,如何解决呢?

最简单的办法就是两种取其一。

但是如果两种都要呢?

网上说的比较多的办法是修改插件代码如:

用cos-html-cache后,浏览数不能更新,打开wp-postviews.php这个文件,找到以下代码:

[php]if(defined(‘WP_CACHE’) && WP_CACHE)[/php]

替换成:

[php]if((defined(‘WP_CACHE’) && WP_CACHE) || (defined(‘COSMETA’) && COSMETA))[/php]

这样就可以了,再看看生成的文章页源文件,可以看到wp-postviews添加一段ajax代码来更新浏览次数。

遗憾的这里有两个问题:

[icon_list style=”check”]

  • 笔者没有找到这段代码,发现代码变了。
  • 如果postviews升级了,岂不是又要修改。

[/icon_list]

所以接下来笔者想到了是不用修改插件实现。幸好有人解决了这个问题,特此记录下来。

 

二、让WP-PostViews与cos html cache和平共处,一劳永逸

首先下载一个文件wp-counter.php,下载地址如下:

[button url=”http://pan.baidu.com/s/1kXW15″ style=”blue” open_type=”blank”] wp-counter [/button]

 

 

然后解压把这个文件上传到网站根目录,不是插件目录也不是主题目录。

最后清除cos html cache缓存,happy吧。演示看本站。

发表回复

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