帝国CMS自定义标签每月月份发布文章数的统计

2019-09-04 0 498

兼容帝国原来的使用方法即网站信息统计标签[totaldata]使用方法一样 只是时间上0为所有时间不限制、1为今日、2为本月、3为本年(11表示本年1月,12表示本年二月,…,22表示本年12月) ,注意4-10不能用,否则出错。22以上的数字不予统计即全部为0

1、把下面的代码复制粘帖到e\class\userfun.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;
}

?>

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]

PS.由于前期整理文章没有进行格式化信息处理,导致有些包含代码修改的信息,格式混乱看不清楚。如果发现有此类问题,请在下方评论留言,小编第一时间进行格式化整理!感谢配合

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

1、如非特殊说明,本站对本文提供的代码或者素材不拥有任何权利,其版权归原著者拥有。
2、以上提供的代码或者素材均为作者提供和网友推荐收集整理而来,仅供学习和研究使用。
3、如有侵犯你版权的,请来信(邮箱:admin@mail.52muban.com)指出,核实后,本站将立即改正。
4、如有链接无法下载、失效或广告,请点击下面的报错或者联系我们处理!
5、以上资源售价只是赞助,不代表代码或者素材本身价格。收取费用仅维持本站的日常运营所需!

我爱模板网 dedecms教程 帝国CMS自定义标签每月月份发布文章数的统计 https://www.52muban.com/2890.html

专注网站开发,建设。

常见问题
  • 我们承诺演示效果图均和网站一模一样,如有不同,全额退款,并且我们的模板和数据都没有留后门,请放心使用。
查看详情
  • 本站所有源码版权归原作者所有,我爱模板网提供的源码只能用于学习研究,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。
查看详情

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务