WordPress文章阅读量统计和显示(非插件, 刷新页面不累加)

41次阅读

共计 1111 个字符,预计需要花费 3 分钟才能阅读完成。

本文已同步到专业技术网站 www.sufaith.com, 该网站专注于前后端开发技术与经验分享, 包含 Web 开发、Nodejs、Python、Linux、IT 资讯等板块.
WordPress 文章阅读量统计实现思路:
每进入一次文章详情页面, 就会通过 cookie 判断该用户是否在设定的过期时间内访问过该文章, 若没有访问过, 则浏览次数增加一次。
实现流程如下:
1. 添加以下代码至主题的 functions.php 文件, 放在该文件最下面即可:
function getPostViews($postID){
$count_key = ‘views’;
$count = get_post_meta($postID, $count_key, true);
if($count==” || !$count){
return “0”;
}
return $count;
}
function setPostViews($postID){
$count_key = ‘views’;
$count = get_post_meta($postID, $count_key, true);
if($count==” || !$count) {
$count = 1;
delete_post_meta($postID, $count_key);
add_post_meta($postID, $count_key, $count);
}else{
$count++;
update_post_meta($postID, $count_key, $count);
}
}

2. 添加以下代码至主题的 single.php 文件, 时间间隔可自定义设置, 放在该文件最上面即可:
<?php
if(!isset($_COOKIE[‘views’.$post->ID.COOKIEHASH]) || $_COOKIE[‘views’.$post->ID.COOKIEHASH] != ‘1’){
setPostViews($post->ID);
setcookie(‘views’.$post->ID.COOKIEHASH,’1′,time() + 99999999,COOKIEPATH,COOKIE_DOMAIN);
}
?>

3. 将以下代码添加到要显示浏览次数的位置, 例如 文章列表 (template-parts/content.php), 文章详情页面(template-parts/content-single.php), 搜索结果页面(template-parts/content-search.php) 等。
<?php echo getPostViews(get_the_ID());?>

以下是我的个人博客 http://www.sufaith.com 添加展示阅读量的代码和实际显示效果。

正文完
 0