当前位置:首页 > 文章 > 帝国CMS > 正文内容

帝国cms实现文章点击月周日排行效果方法

3年前 (2022-10-21)帝国CMS6036

模型管理增加相应3个字段,分别是:DayHits WeekHits MonthHits 这3个字段全部在主表,int类型字段

再增加 ConditionHits 字段,为文本型,同样在主表 注意大小写

$time=mktime(0,0,0,8,5,2010);//设置日期为2010年8月5号

$wzid=35;//文章ID35

$Week=date("w",$time);//今天星期几

$Number=date("j",$time);//今天几号

$Month=date("m",$time);//今天是几月

$Years=date("Y",$time);//今天那年

$d=cal_days_in_month(CAL_GREGORIAN,$Month,$Years);//去得本月总天数

$Week_r=$Number-$Week;//本周日是几号

if($Week_r<1){$Week_r=cal_days_in_month(CAL_GREGORIAN,$Month-1,$Years)+$Week_r;}

$Week_l=$Number+7-$Week-1;//本周六是几号

if($Week_l>$d){$Week_l=$Week_l-$d;}

$newsrs=$empire->fetch1("select ConditionHits from {$dbtbpre}ecms_news where `id`={$wzid}");

$DayHitstime_k=mktime(0,0,0,date("m",$time),$Number,date("Y",$time));

$DayHitstime_j=$DayHitstime_k+86400;

if(empty($newsrs['ConditionHits'])){//判断月、周、日点击条件是否为空,如果为空,初始值

$empire->query("UPDATE `{$dbtbpre}ecms_news` SET `ConditionHits`='".$Number."|".$Week_r."-".$Week_l."|".$Month."',`DayHits`=1,`WeekHits`=1,`MonthHits`=1 WHERE `id`={$wzid}");

}else{

$Daytj=explode("|",$newsrs['ConditionHits']);

print_r($Daytj);

if($newsrs['ConditionHits']!="".$Number."|".$Week_r."-".$Week_l."|".$Month.""){

if((int)$Daytj[0]!=$Number){

$empire->query("UPDATE `{$dbtbpre}ecms_news` SET `ConditionHits`='".$Number."|".$Daytj[1]."|".$Daytj[2]."',`DayHits`=0 WHERE `id`={$wzid}");

}

if($Daytj[1]!="".$Week_r."-".$Week_l.""){

$empire->query("UPDATE `{$dbtbpre}ecms_news` SET `ConditionHits`='".$Daytj[0]."|".$Week_r."-".$Week_l."|".$Daytj[2]."',`WeekHits`=0 WHERE `id`={$wzid}");

}

if((int)$Daytj[2]!=(int)$Month){

$empire->query("UPDATE `{$dbtbpre}ecms_news` SET `ConditionHits`='".$Daytj[0]."|".$Daytj[1]."|".$Month."',`MonthHits`=0 WHERE `id`={$wzid}");

}

}else{

if((int)$Daytj[0]==$Number){

$empire->query("UPDATE `{$dbtbpre}ecms_news` SET `DayHits`=DayHits+1 WHERE `id`={$wzid}");//今日点击+1

}

if($Daytj[1]==$Week_r."-".$Week_l){

$empire->query("UPDATE `{$dbtbpre}ecms_news` SET `WeekHits`=WeekHits+1 WHERE `id`={$wzid}");//本周点击+1

}

if((int)$Daytj[2]==(int)$Month){

$empire->query("UPDATE `{$dbtbpre}ecms_news` SET `MonthHits`=MonthHits+1 WHERE `id`={$wzid}");//本月点击+1

}

}

}

扫描二维码推送至手机访问。

版权声明:本文由蓝博发布,如需转载请注明出处。

本文链接:https://www.blueboss.cn/p/485.shtml

“帝国cms实现文章点击月周日排行效果方法” 的相关文章

帝国CMS动态页支持栏目导航标签循环子栏目数据标签万能标签的调用

帝国CMS动态页支持栏目导航标签循环子栏目数据标签万能标签的调用

分享一种利用JS来实现支持栏目导航标签,万能标签,循环子栏目数据标签的方法。   第一步:在【模板】下面增加标签模板,标签模板内容如下:   页面模板内容(*): [!--empirenews.listtemp--]<!--list.var1-->[!--empirenews.list...

帝国cms字段处理函数是怎么处理

帝国cms字段处理函数是怎么处理

帝国cms字段处理函数的方法! 增加/修改字段时可以设置“后台增加信息处理函数”、“后台修改信息处理函数”、“前台增加信息处理函数”、“前台修改信息处理函数”,可以分别设置对字段内容处理的函数,对于对字段内容存放格式有特殊要求的模型用得比较多。下面简单讲解下处理函数制作格式。   基本设置步骤:  ...

帝国CMS灵动标签调用包含指定关键词关键字文章

帝国CMS灵动标签调用包含指定关键词关键字文章

用灵动标签调用包含指定的关键词,和关键字的文章呢?其实实现的方法不难,以下是调用方法: 指定关键词调用: [e:loop={"select * from {$dbtbpre}ecms_news where title like '%这里是指定的关键词%' and checked=1 order b...

帝国CMS列表页调用副表字段

帝国CMS列表页调用副表字段

列表模板中要调用副表字段内容需要采用“list.var支持程序代码”。下面帝国cms模板网就来告诉大家: 下面以读取新闻副表中的newstext字段为例的list.var模板代码: $fr=$empire->fetch1("select newstext from {$dbtbpre}ecm...

帝国cms内容页调用相关阅读文章

帝国cms内容页调用相关阅读文章

帝国CMS调用相关信息文章的方法,帝国cms怎么调用相关阅读文章呢? 调用代码: [e:loop={"select * from phome_ecms_news where classid={$ecms_gr['classid']} order by onclick desc limit 5",0...

帝国CMS404页面优化有什么作用

帝国CMS404页面优化有什么作用

我们应该正确理解什么是帝国cms 404页面。404页面是当页面不存在时被提示的页面。本页面可根据网站管理员的个人喜好随意显示。 用户浏览网站时遇到的错误页面地址、输入错误或帝国cms内容发布后未生成内容页面的原因并不多。然而,这种情况很少见。大多数情况下,搜索引擎可能会包含某个页面。但是,由于不小...