快生活 - 生活常识大全

浏览次数统计插件使用详解


  WP-PostViews是一款很受欢迎的文章浏览次数统计插件,记录每篇文章展示次数、根据展示次数显示历史最热或最衰的文章排行、展示范围可以是全部文章和页面,也可以是某些目录下的文章和页面。本文还介绍了一些隐藏的功能,例如按照文章次数排序全站文章的功能。
  到后台安装插件那里搜索WP-PostViews就可以下载该插件,具体过程不再赘述。
  使用方法
  启用插件后,后台会出现一个新的菜单:设置(Settings)-> PostViews。访问这里就可以配置WP-PostViews的工作方式。具体怎么用,请看下面的图示,看图之前需要知道的一些事情:
  WP-PostViews工作原理:每刷新一个页面,如果计数有效,则写数据库更新展示次数,展示次数用custom fields记录。
  设置生效的前提:需要将插件提供模板标签the_views()写到模板中(index.php、single.php或者page.php等),该标签要写在循环(loop)内。
  设置中关于the_views()的输出控制是全局设置,比如指定显示次数后面的文字是"人围观",那么不管在哪里调用the_views(),都会输出类似100人围观的字样,而不是100人关注之类的。
  下面看图,点击可查看大图
  如何展示最热门或者最冷门的文章
  WP-PostViews提供了一个widget小工具,上面图示中也有提到,启用这个widget,设置好标题、显示文章数目、显示文章的类型以及是否显示某些目录下的文章,就可以启用。
  Statistics Type设置
  显示热门文章:Most Viewed
  显示冷门文章:Least Viewed
  显示某些目录下的热门文章:Most Viewed By Category
  显示某些目录下的冷门文章:Least Viewed By Category
  WordPress的Widget支持多个实例,因此你可以在同一个页面放置多个Views 小工具,同时展示最热和最冷文章,或者同时展示不同目录下的最热文章。
  关于the_views()标签
  既然the_views()是该插件的灵魂函数,多唠叨两句也无妨,先看the_views()的参数
  <!--?php display="true," prefix="""," postfix="""," always="false)"--><!--?php-->
  //$display - 直接显示还是作为字符串返回
  //$prefix - views前面的内容
  //$postfix - views后面的内容
  //$always - 是否总是显示(与后台设置中的display options相关
  //如果该项为真,则display options无论如何设置都没用)
  比较有用的两个参数是$prefix和$postfix,例如给the_views()加一个span标签
  the_views(true,"<span class=""views"">","</span>");
  输出结果为
  <span class=""views"">20 views</span>
  当然你可以在模板中调用时写成
  <span class=""views""><!--?php--><!--?php--></span>
  如何直接获取展示次数
  如果你想动态设置展示次数后面的文字,例如在标题下面,需要展示为 "20次围观",另一个位置只想显示成20,不要后面的文字。怎么办?
  最近单的方法是直接获取展示次数,这样后面是什么文字你可以随便写,不需要通过后台设置来控制。
  前面说过WP-PostViews用custom field存储展示次数,这个custom field叫做"views",直接获取views的值就可以了。
  方法一:在loop中获取。
  $post_views=intval(post_custom("views"));
  echo$post_views,__(" your text");
  方法二:获取任意文章的展示次数,是否在loop中无所谓
  &lt;?php$post_views= get_post_meta(1,"views", true);
  echo$post_views,__(" your text");
  ?&gt;
  上面的代码显示ID为1的post的展示次数
  更改主循环排序,按照文章展示次数浏览
  WP-PostViews还自带了排序功能,通常首页展示的文章是按照发布时间来排序的,你可知道只需要在url中添加一些参数就可以改变排序。例如
  按照访问次数由多到少排序,尝试这样访问你的网站
  http://yourdomain.com/?v_sortby=views
  按照访问次数由少到多排序,添加这样的参数
  http://yourdomain.com/?v_sortby=views&amp;v_orderby=asc
  只要启用了WP-PostViews,你的网站就自动获得了这种排序浏览的方式,本站启用了该插件,你可以访问下面的地址测试。
  https://www.solagirl.net/?v_sortby=views
  https://www.solagirl.net/?v_sortby=views&amp;v_orderby=asc
  本博客更换主题后就禁用了WP PostViews插件,所以无法看到效果,请自行安装测试。
  如果不想这种不美观的地址被搜索引擎收录,在链接里加上rel="nofollow"即可。
  WP-PostViews API
  WP-PostViews定义的函数也可以单独调用,它提供的views小工具就是调用这些函数工作的。
  <!--?php mode="""," limit="10," chars="0," display="true)"--><!--?php-->
  //显示最冷门文章
  //$mode: post | page | both (相当于widget中的Statistics Type设置)
  //$limit: 显示多少篇文章
  //$chars: 标题长度
  //$display: 为true则直接显示,否则作为字符串返回
  <!--?php mode="""," limit="10," chars="0," display="true)"--><!--?php-->
  //显示最热门文章
  <!--?php category_id="0," mode="""," limit="10," chars="0," display="true)"--><!--?php-->
  //显示某个或某些目录下最冷门文
  <!--?php category_id="0," mode="""," limit="10," chars="0," display="true)"--><!--?php-->
  //显示某个或某些目录下最热门文章
  <!--?php tag_id="0," mode="""," limit="10," chars="0," display="true)"--><!--?php-->
  //显示指定标签下的最热门文章
  <!--?php tag_id="0," mode="""," limit="10," chars="0," display="true)"--><!--?php-->
  //显示指定标签下的最冷门文章
  <!--?php--><!--?php-->
  //显示全站文章总共被浏览过多少次
  结语
  虽然不用代码也可以实现计数功能,但Sola仍然推荐使用WP-PostViews插件来计数,原因嘛,该插件其实是非常透明的,所有的数据都可以直接调用,定制化非常方便,而且兼容WP SuperCache缓存插件,自带全站文章排序功能,试问这些功能自己来写,真的就能比这个插件节省内存和CPU资源吗。未必,而且方便性会大打折扣。
  这是一款强大的插件,更灵活的使用方法等着你来发掘。
网站目录投稿:阏逢