php点击率代码,Phpcms V9 点击量、排行调用方法

PhpCms v9 默认只调用当前栏目的文章排行,却没有调用全站文章排行的代码,在网上查找到了以下方法,来实现此功能,备忘如下:

调用代码:

{pc:content action=”sitehits” siteid=”4″ num=”10″ order=”views DESC” cache=”3600″}

{loop $data $r}

{/loop}

{/pc}

{$r[title]}

打开phpcms\modules\content\classes\content_tag.class.php 在里面添加以下代码:

/**

* sitehits站点点击排行

* @param $data

*/

function sitehits($data){

if(empty($data['siteid'])) return false;

$siteid = intval($data['siteid']);

$this->hits_db = pc_base::load_model(‘hits_model’);

$category_content = getcache(‘category_content’,'commons’);

$catid = ”;

//获取站点下所有栏目ID

foreach($category_content as $key=>$val){

if($val==$siteid){

$catid .= $comma.$key;

$comma=’,';

}

}

//获取点击排行

$r = $this->hits_db->select(‘catid in(‘.$catid.’)',’hitsid’,$data['limit'],$data['order']);

$return = array();

$sitemodel_model_db = pc_base::load_model(‘sitemodel_model’);

$this->db_config = pc_base::load_config(‘database’);

$tablepre = $this->db_config['default']['tablepre'];

foreach($r as $key){

preg_match_all(‘/-(\d+)-/’,$key['hitsid'],$modelid);

$id = substr($key['hitsid'],(strpos($key['hitsid'],’-',2)+1));

$tablename = $sitemodel_model_db->get_one(array(‘modelid’=>$modelid[1][0]),’tablename’);

$this->db->table_name = $tablepre.$tablename['tablename'];

$return[] = array_merge($return,$this->db->get_one(array(‘id’=>$id)));

}

return $return;

}

当天帖子点击排行调用方法:

{php $historytime = mktime(0, 0, 0, date('m', TIME), date('d', TIME), date('Y', TIME));}

{get sql="select p.*,t.* from phpcms_content p,phpcms_content_count t where p.contentid=t.contentid and p.status=99 and p.inputtime>=$historytime order by t.hits desc" rows="10" return="v"}

标题及链接:{$v[title]}点击数:{$v[hits]} {/get}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值