详解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());?>
备注:--注意不同模板这几个页面对应的文件名可能不一样,比如我的其实是pagesingge等页面,结合自己的实际情况找到对应的页面添加如下代码即可!
版权声明:
作者:admin
链接:http://blog.mryxh.cn/83.html
文章版权归作者所有,未经允许请勿转载。
THE END