WordPress文章刷新不影响浏览量的统计代码
2020-05-24 07:37WordPress
wordpress程序默认是没有文章浏览器统计的,无论是用纯代码还是使用wordpress插件wp-postview,刷新当前页面还是会算做一个浏览数量,那今天给大家介绍下刷新不重复记录的文章浏览量统计代码。
一、在wordpress主题下functions.php里增加以下代码
//add by charleswu
function getPostViews($postID) {
$count_key = 'post_views_count';
$count = get_post_meta($postID, $count_key, true);
if ($count == '') {
delete_post_meta($postID, $count_key);
add_post_meta($postID, $count_key, '0');
return "0";
}
return $count;
}
function setPostViews($postID) {
$count_key = 'post_views_count';
$count = get_post_meta($postID, $count_key, true);
if ($count == '') {
$count = 0;
delete_post_meta($postID, $count_key);
add_post_meta($postID, $count_key, '0');
} else {
$count++;
update_post_meta($postID, $count_key, $count);
}
}
二、解决刷新统计数增加,一定要放在文章页面的最前面,貌似php设置cookie之前不能有输出,我的是single.php页面
<?php
$post_id=get_the_ID();
if(isset($_COOKIE['views'.$post_id.COOKIEHASH]) && $_COOKIE['views'.$post_id.COOKIEHASH] == '1')
{
}
else{
setPostViews($post_id);
setcookie('views'.$post_id.COOKIEHASH,'1',time() + 3600,COOKIEPATH,COOKIE_DOMAIN);//设置时间间隔
}
?>
其实第一段代码和网上能找到的普通wordpress文章浏览量添加代码是一样的,重点是第二段的需要在文章页面single里面添加的这段代码起着决定性的作用。大家可以使用看看,有更多的方式可以和我沟通。
很赞哦! ()
相关文章
- 帝国CMS灵动标签调用排除重复链接的文章
- 帝国cms文章标题自动加关键词插件 SEO优化专用
- 帝国CMS灵动标签在内容页调用当前栏目多篇文章并且排除当前文章
- 帝国CMS模板显示最新24小时文章显示红色日期(列表页-列表内容字段)方法
- 帝国CMS模板中:使用php调用最新文章的代码(非灵动和万能标签)
- 帝国CMS模板php灵动标签循环栏目带文章(一级栏目、子栏目、子栏目下的文章)
- 帝国CMS模板TAGS列表页调用当前标签的文章数量NUM,TAG名称,TAGID
- 帝国CMS新闻文章数据表自增列中间插入一行数据,自增ID继续连续的方法!
- 帝国CMS模板判断文章是前台投稿还是后台发布,包含判断会员和游客方法
- wordpress自动替换文章内容content中的字符