首页 > 技术 > wp-postviews不计数

wp-postviews不计数

2013年4月7日 发表评论 阅读评论

周末修改了wordpress的主题,每次改主题一堆东西要改,而且还会遇到之前没遇到问题。

以后大家换主题还是要慎重再慎重。

这次遇到的新问题是wp-postviews不计数,发布新文章后不管怎么刷新都不能正确计数。

我们知道wordpress的很多功能,如果按月、按天排行功能都是基于这个统计,所以还不能简单的把它关闭了。

遇到问题首先肯定还是要搜索一下,基本上都是说由于开启了缓存静态化导致不能计数,或者是教你如何显示计数的(<?php if(function_exists('the_views')) { the_views(); } ?>这段代码只是说在哪里显示计数,并不是触发计数的)。

可是我没有增加什么插件,只是更改了主题啊。

继续查找翻了几页终于找到答案了,

如下记录

在itzhai那里找到了原因及修改办法,转过来做个备份:
在后台的插件列表中找到WP-PostViews,并点击编辑,打开其源代码,找到了如下函数
### Function: Calculate Post Views
add_action('wp_head', 'process_postviews');
function process_postviews() {..}
可以发现这个process_postviews()函数就是统计浏览次数的函数,在这里使用了这样一句代码:
add_action('wp_head', 'process_postviews');
经过在wordpress的帮助文档中找到关于两个函数的说明:
add_action():
http://codex.wordpress.org/Function_Reference/add_action
Hooks a function on to a specific action.
wp_head():
http://codex.wordpress.org.cn/Plugin_API/Action_Reference/wp_head
ttwp_head()/tt is triggered within the tthead/head/tt section of the user’s template by the ttwp_head()/tt function. Although this is theme-dependent, it is one of the most essential theme hooks, so it is fairly widely supported.
知道了,这句代码是在wp_head执行时添加自定义的一些动作,这里就是添加了这个统计访问数的函数process_postviews(),为了让这句话能够被执行,需要在wordpress主题程序中添加上wp_head()这个函数,以便能够执行到被添加的process_postviews()函数。

这个情况跟我很相似,就是修改主题后wp-postviews不能计数。

所以解决的方法就是在header.php文件中的标签中添加上这个函数:<?php wp_head(); ?>

搞定收工,postviews可以计数。

ad一下吧:264查询网

分类: 技术 标签: ,
  1. 2013年4月8日14:38 | #1

    刚刚好找到了

  1. 本文目前尚无任何 trackbacks 和 pingbacks.