分享喵
分享我们的收藏

wordpress利用Post Views Plus插件(或者纯代码)在前台页面和后台文章列表显示浏览量

关于浏览量(PV),很多wp模板已经自带了。

今天喵叔用wp搭建商城的时候选择了一个国外主题,并没有pv统计,自然便想到了万能的插件。

Post Views Plus是搜索Post Views插件时候发现的,看名称有plus应该是更厉害了,所以直接下载了它。


一、启用插件,前台显示

安装启用插件,这时插件就开始工作了,浏览量会统计到数据库,但是我们在前台页面并不能看见,这时候我们根据官方文档,只需要添加相应的代码到我们需要显示pv的页面即可。

300c1510401235 - wordpress利用Post Views Plus插件(或者纯代码)在前台页面和后台文章列表显示浏览量

比如我们想在文章页面显示,只需打开模板下面的single.php文件(不同模板可能会有区别,请自寻),插入上面的代码即可

<?php if(function_exists(’the_views’)) { the_views(); } ?>(如果插入在php里面,把首<?php尾?>去掉),如下图

4edd1510401645 - wordpress利用Post Views Plus插件(或者纯代码)在前台页面和后台文章列表显示浏览量

完了保存,刷新,文章页面应该就能显示浏览量了。


二、添加函数,后台显示

上面我们成功让前台页面显示浏览量,可是有没有办法让后台文章列表也显示呢?当然是有办法的

打开主题下的functions.php文件,在最后一个?>前面(如果没有?>就添加在最上面的<?php后面)添加如下代码

<?php
 //在后台文章列表增加一列数据
 add_filter( ’manage_posts_columns’, ’ashuwp_customer_posts_columns’ );
 function ashuwp_customer_posts_columns( $columns ) {
 $columns[’VIEW_COUNT’] = ’Views’;
 return $columns;
 }
 //输出浏览次数
 add_action(’manage_posts_custom_column’, ’ashuwp_customer_columns_value’, 10, 2);
 function ashuwp_customer_columns_value($column, $post_id){
 if($column==’VIEW_COUNT’){
 $count = get_post_meta($post_id, ’views’, true);
 if(!$count){
 $count = 0;
 }
 echo $count;
 }
 return;
 }

保存刷新后台,可以看到效果

08931510403457 - wordpress利用Post Views Plus插件(或者纯代码)在前台页面和后台文章列表显示浏览量

如果全部为零无效果,可能是$count = get_post_meta($post_id, ’views’, true);里面的views函数不对,按照插件函数修改正确。(只要这个插件不做大调整,这里就会是正确的)


三、插件如何设置,显示所有浏览量/访客浏览量/ip数量

如下图,我已经描述得很清楚了

2a181510401248 - wordpress利用Post Views Plus插件(或者纯代码)在前台页面和后台文章列表显示浏览量

这样我们便完成了基本操作,一切正常使用,这个插件还有一些别的功能,比如浏览量排序等,请详见官方文档。


四、我应不应该使用此插件?

其实做数据统计这个插件肯定是不够了,wp还有更多专业的数据统计插件,而且谷歌分析或者百度统计等能很好的完成这些工作。

其实小博客并不推荐安装很多插件,因为真的很占内存啊!这个插件也不例外,不过还在接受范围内,或许你也可以接着往下看:


五、不使用插件我能完成这个插件的效果吗?

答案是肯定的。并且很简单。

①、functions.php

添加

/* 访问计数 */
 function record_visitors()
 {
 if (is_singular())
 {
 global $post;
 $post_ID = $post->ID;
 if($post_ID)
 {
 $post_views = (int)get_post_meta($post_ID, ’views’, true);
 if(!update_post_meta($post_ID, ’views’, ($post_views+1)))
 {
 add_post_meta($post_ID, ’views’, 1, true);
 }
 }
 }
 }
 add_action(’wp_head’, ’record_visitors’);
 /// 函数名称:post_views
 /// 函数作用:取得文章的阅读次数
 function post_views($before = ’(点击 ’, $after = ’ 次)’, $echo = 1)
 {
 global $post;
 $post_ID = $post->ID;
 $views = (int)get_post_meta($post_ID, ’views’, true);
 if ($echo) echo $before, number_format($views), $after;
 else return $views;
 }

接着添加(用于在后台文章列表显示)

//在后台文章列表增加一列数据
 add_filter( ’manage_posts_columns’, ’ashuwp_customer_posts_columns’ );
 function ashuwp_customer_posts_columns( $columns ) {
 $columns[’views’] = ’浏览次数’;
 return $columns;
 }
 //输出浏览次数
 add_action(’manage_posts_custom_column’, ’ashuwp_customer_columns_value’, 10, 2);
 function ashuwp_customer_columns_value($column, $post_id){
 if($column==’views’){
 $count = get_post_meta($post_id, ’views’, true);
 if(!$count){
 $count = 0;
 }
 echo $count;
 }
 return;
 }

②在前台文章显示,如(single.php)

添加

<?php post_views(’ ’, ’ 次’); ?>

就这样,保存,刷新,看效果吧,如果没效果,请去百度。

 

喵叔尝试了是有效果的,但是因为安装了WP Super Cache插件,所以这个代码会失效,但是Post Views Plus可以兼容WP Super Cache,所以插件的方式一切如常。

最后如何抉择,我推荐你都去尝试。


以上,均为个人日常记录,方便个人今后使用,同时也分享给大家,如果有错误,请提出!

本站信息除喵叔原创外均来源于网络,信息可靠性请自行辨别,本站不负责相应的法律责任!交流群:512346889;转载请加超链接注明:分享喵 » wordpress利用Post Views Plus插件(或者纯代码)在前台页面和后台文章列表显示浏览量

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址