您现在的位置是:首页 > 教程 > 帝国CMS教程帝国CMS教程
帝国CMS增加自定义标签每月月份文章数量统计
捷彦2023-01-02 10:01:42帝国CMS教程已有人查阅
导读兼容帝国原有的使用方式,即网站信息统计标签【总数据】的使用方式相同,但时间为0永远无限,1为今天,2为本月,3为本每年(11表示今年1月,12表示今年2月,...,22表示今年12月),注意不能用4-10,否则会出错。 22以上的数字不计入,即全部为0
兼容帝国原有的使用方式,即网站信息统计标签【总数据】的使用方式相同,但时间为0永远无限,1为今天,2为本月,3为本每年(11表示今年1月,12表示今年2月,...,22表示今年12月),注意不能用4-10,否则会出错。 22以上的数字不计入,即全部为0
1、把下面的代码复制粘帖到eclassuserfun.php中<?php和?>间
2、新建标签代码
后台-模板-标签-标签管理-增加标签-增加内容如下:
标签名:每月信息统计
标签符号:TotalData1
所属类别:
函数名:user_TotalData1
标签格式:[totaldata]栏目ID,操作类型,时间范围,统计类型[/totaldata]
标签说明:
操作类型说明:
操作类型 内容
0 统计栏目数据
1 统计标题分类
2 统计数据表
时间范围:0为不限;1为今日;2为本月;3为本年。
统计类型:0为统计信息数;1为统计评论数;2为统计点击数;3为统计下载数。
如果操作类型是“统计数据表”,栏目ID='数据表名'
[totaldata]栏目ID,操作类型,时间范围,统计类型[/totaldata]
新闻统计
1、把下面的代码复制粘帖到eclassuserfun.php中<?php和?>间
//---------------------------自定义一个统计标签,兼容帝国原来的使用方法
//修改后的信息统计。$day参数11表示本年1月,12表示本年二月,...,22表示本年12月
function user_TotalData1($classid,$enews=0,$day=0,$totaltype=0){
global $empire,$class_r,$class_zr,$dbtbpre,$fun_r,$class_tr;
if(empty($classid))
{
return "";
}
//统计类型
if($totaltype==1)//评论数
{
$totalfield='sum(plnum) as total';
}
elseif($totaltype==2)//点击数
{
$totalfield='sum(onclick) as total';
}
elseif($totaltype==3)//下载数
{
$totalfield='sum(totaldown) as total';
}
else//信息数
{
$totalfield='count(*) as total';
}
if($day)
{
if($day==1)//今日信息
{
$date=date("Y-m-d");
$starttime=$date." 00:00:01";
$endtime=$date." 23:59:59";
}
elseif($day==2)//本月信息
{
$date=date("Y-m");
$starttime=$date."-01 00:00:01";
$endtime=$date."-".date("t")." 23:59:59";
}
elseif($day==3)//本年信息
{
$date=date("Y");
$starttime=$date."-01-01 00:00:01";
$endtime=($date+1)."-01-01 00:00:01";
}
elseif($day>10)//本年某月信息
{
$yue=$day-10;
$date=date("Y");
$starttime=$date."-".$yue."-01 00:00:01";
if($yue==12){$endtime=$date."-".$yue."-31 23:59:59";}else{$endtime=$date."-".($yue+1)."-01 00:00:01";}
}
$and=" and newstime>=".to_time($starttime)." and newstime<=".to_time($endtime);
}
if($enews==1)//统计标题分类
{
if(empty($class_tr[$classid][tbname]))
{
echo $fun_r['BqErrorTtid']."=<b>".$classid."</b>".$fun_r['BqErrorNtb'];
return "";
}
$query="select ".$totalfield." from {$dbtbpre}ecms_".$class_tr[$classid][tbname]." where ttid='$classid'".$and;
}
elseif($enews==2)//统计数据表
{
$query="select ".$totalfield." from {$dbtbpre}ecms_".$classid.(empty($and)?'':' where '.substr($and,5));
}
else//统计栏目数据
{
if(empty($class_r[$classid][tbname]))
{
echo $fun_r['BqErrorCid']."=<b>".$classid."</b>".$fun_r['BqErrorNtb'];
return "";
}
if($class_r[$classid][islast])//终极栏目
{
$where="classid='$classid'";
}
else//大栏目
{
$where=ReturnClass($class_r[$classid][sonclass]);
}
$query="select ".$totalfield." from {$dbtbpre}ecms_".$class_r[$classid][tbname]." where ".$where.$and;
}
$num=$empire->gettotal($query);
echo $num;
}
?>//---------------------------自定义一个统计标签,兼容帝国原来的使用方法
//修改后的信息统计。$day参数11表示本年1月,12表示本年二月,...,22表示本年12月
function user_TotalData1($classid,$enews=0,$day=0,$totaltype=0){
global $empire,$class_r,$class_zr,$dbtbpre,$fun_r,$class_tr;
if(empty($classid))
{
return "";
}
//统计类型
if($totaltype==1)//评论数
{
$totalfield='sum(plnum) as total';
}
elseif($totaltype==2)//点击数
{
$totalfield='sum(onclick) as total';
}
elseif($totaltype==3)//下载数
{
$totalfield='sum(totaldown) as total';
}
else//信息数
{
$totalfield='count(*) as total';
}
if($day)
{
if($day==1)//今日信息
{
$date=date("Y-m-d");
$starttime=$date." 00:00:01";
$endtime=$date." 23:59:59";
}
elseif($day==2)//本月信息
{
$date=date("Y-m");
$starttime=$date."-01 00:00:01";
$endtime=$date."-".date("t")." 23:59:59";
}
elseif($day==3)//本年信息
{
$date=date("Y");
$starttime=$date."-01-01 00:00:01";
$endtime=($date+1)."-01-01 00:00:01";
}
elseif($day>10)//本年某月信息
{
$yue=$day-10;
$date=date("Y");
$starttime=$date."-".$yue."-01 00:00:01";
if($yue==12){$endtime=$date."-".$yue."-31 23:59:59";}else{$endtime=$date."-".($yue+1)."-01 00:00:01";}
}
$and=" and newstime>=".to_time($starttime)." and newstime<=".to_time($endtime);
}
if($enews==1)//统计标题分类
{
if(empty($class_tr[$classid][tbname]))
{
echo $fun_r['BqErrorTtid']."=<b>".$classid."</b>".$fun_r['BqErrorNtb'];
return "";
}
$query="select ".$totalfield." from {$dbtbpre}ecms_".$class_tr[$classid][tbname]." where ttid='$classid'".$and;
}
elseif($enews==2)//统计数据表
{
$query="select ".$totalfield." from {$dbtbpre}ecms_".$classid.(empty($and)?'':' where '.substr($and,5));
}
else//统计栏目数据
{
if(empty($class_r[$classid][tbname]))
{
echo $fun_r['BqErrorCid']."=<b>".$classid."</b>".$fun_r['BqErrorNtb'];
return "";
}
if($class_r[$classid][islast])//终极栏目
{
$where="classid='$classid'";
}
else//大栏目
{
$where=ReturnClass($class_r[$classid][sonclass]);
}
$query="select ".$totalfield." from {$dbtbpre}ecms_".$class_r[$classid][tbname]." where ".$where.$and;
}
$num=$empire->gettotal($query);
echo $num;
}
?>
2、新建标签代码
后台-模板-标签-标签管理-增加标签-增加内容如下:
标签名:每月信息统计
标签符号:TotalData1
所属类别:
函数名:user_TotalData1
标签格式:[totaldata]栏目ID,操作类型,时间范围,统计类型[/totaldata]
标签说明:
操作类型说明:
操作类型 内容
0 统计栏目数据
1 统计标题分类
2 统计数据表
时间范围:0为不限;1为今日;2为本月;3为本年。
统计类型:0为统计信息数;1为统计评论数;2为统计点击数;3为统计下载数。
如果操作类型是“统计数据表”,栏目ID='数据表名'
[totaldata]栏目ID,操作类型,时间范围,统计类型[/totaldata]
新闻统计
[totaldata]2,0,3,0[/totaldata]
本文标签:
很赞哦! ()
相关文章
- 帝国cms自定义字段ReturnClassAddField标签截取字数的方法
- 自定义函数解决帝国cms简介截取字符出现html代码的方法
- 本地环境phpStudy搭建帝国CMS的方法
- 帝国cms提示Table 'px.***_enewspubtemp_2' doesn't exist的解决方法
- 帝国cms通过栏目ID获取栏目名称,别名,链接的方法
- 帝国CMS二次开发新浪iplookup根据ip跳转到不同域名的方法
- 帝国CMS怎么实现内容关键字替换图片alt的办法
- 帝国CMS怎么使用egetip()获取用户IP函数
- 帝国cms二次开发实现纯JS版的地区联动筛选功能
- 帝国CMS批量提取第一张图片为标题缩略图的方法
- 帝国cms自带ckeditor编辑器代码高亮的方法codesnippet风格
- 帝国CMS文章和TAG删除编号ID从1开始的方法
随机图文
-
帝国CMS利用栏目绑定域名做分站的方法
帝国CMS的栏目设置是可以绑定独立域名的,也有很多人想用这个功能来搭建站群,一个栏目一个站的想法,其实是可行的。 -
帝国cms调用当前同级栏目的代码
帝国cms调用当前同级栏目代码,以上就是关于帝国cms调用当前同级栏目的方法-教程-调用代码的代码,希望对大家有所帮助。 -
帝国CMS7.5版多访问端支持设置子端是否开启后台权限
帝国CMS7.5版多访问端支持设置子端是否开启后台权限,更高安全性,维护更方便:1、支持设置前台、后台都开启。 -
帝国CMS自定义列表分页的方法
今天抽空分享一篇帝国cms二次开发高级教程 - 自定义列表分页教程,学会了你就可以开发以下效果的功能了,一个列表页面可以同时出现多个页码。
留言与评论 (共有 条评论) |