网赚论坛

标题: Verycms调用当日 本月最热点击文章 [打印本页]

作者: WarrenJussy    时间: 2017-9-13 19:57
标题: Verycms调用当日 本月最热点击文章
 作为verycms的fans之一,怎能不作一点点贡献以表达我的忠诚呢。
  verycms是我最早使用的一款cms系统,他的模板功能确实很简单很实用,尤其他的模板可以解析PHP脚本,这就可以增加一些复杂的调用了。
  这回我来教大家如何调用当日最热点击和本月最热点击,实际上原理很简单,找出时间段的文章,然后按点击数降序排序。现在分解教学,一步一步来:
  一、实现按点击数排序
  这个很简单,找到获取文章数组的语句,比如这句:$array=$cms::thread(”num:10;mid:1;”);
  要想实现按点击数排序,只要增加查询条件即可,即增加sql里的order,如何实现呢?把$array获取方式修改成:$array=$cms::thread(”num:10;mid:1;order:hits DESC;”);
  二、实现按当日点击数排序
  有了第一步的基础,要实现按当日点击数排序,只需解决另外一个问题:如何把文章筛选为当天发布的文章?当天,比如今天就是2008-07-22 00:00:00,我们要获取这个时间的时间戳(什么是时间戳,这个不作解析,你想了解的google一下),我们用PHP一个函数strtotime来达到目的:
  strtotime(’2008-07-22 00:00:00′);这样是否正确,如果是今天的就是,但到明天的话那就惨了,所以正解应该这样:strtotime(date(”Y-m-d”));动态的获取时间。有了这个认识,我们来看看$array如何获取文章,方法也很简单,看看下面的语句就可以:
  
  $today = strtotime(date(”Y-m-d”));
  $array=$cms::thread(”num:10;mid:1;where:postdate>$today ;order:hits DESC;”);
  三、实现按本月点击数排序
  有了第二步的思想,那么实现按本月点击数排序也就变更很空易了,学是想办法得到当月1号零时零分零秒的时间戳,我也不再罗嗦了,把代码贴出来大家看看就知道:
  
  $first_day_of_month = strtotime(date(”Y-m-01″));//这里有01就表示是当月第一天了。
  $array=$cms::thread(”num:10;mid:1;where:postdate>$first_day_of_month ;order:hits DESC;”);
  希望这篇文章对刚刚接触verycms的你会有所帮助。




欢迎光临 网赚论坛 (http://www.caifuba.net/) Powered by Discuz! X3.1