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

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

浏览次数:
作者: 墨鱼
信息来源: 本站原创
更新日期: 2018-10-11 13:51:34
文章简介

帝国CMS自定义标签,轻松统计每月文章发布数。高效便捷,一键获取月度发布概览。精准数据,助力内容管理。优化内容策略,提升网站运营效果。快速掌握发布动态,实现精准运营。

  • 正文开始
  • 相关阅读
  • 推荐作品
兼容帝国原来的使用方法即网站信息统计标签[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]
帝国CMS在JS登陆状态模板中调用显示会员收到的短消息数
« 上一篇 2018年10月01日
帝国CMS会员中心模板改造之用户自己查看评论过的文章
下一篇 » 2018年10月16日
  • 微软bing IndexNow的推送和管理-帝国CMS插件
    23阅读0条评论0个赞
    微软Bing IndexNow推送管理插件,专为帝国CMS打造。本教程指导您如何高效利用该插件,实现网站内容快速被Bing搜索引擎收录。通过简单配置,即可自动化推送新发布或更新的页面至Bing,加速索引过程,提升网站SEO效果。轻松管理推送历史,监控索引状态,确保网站内容及时展现给目标用户。优化网站可见性,从掌握Bing IndexNow推送管理开始。
  • 帝国CMS8.0测试版搜索结果页只显示第1页的解决方法
    50阅读0条评论0个赞
    对于刚安装帝国CMS8.0测试版尝鲜的小伙伴们可能发现,使用高级搜索的时候结果页只显示第1页,虽然帝国CMS开发者说正式版会解决此问题,但是临时使用还是要先解决这个问题的。所以今天墨鱼就说下临时的解决方法。
  • 【优化分享】帝国CMS大数据量筛选性能瓶颈突破实践
    243阅读0条评论5个赞
    突破帝国CMS大数据筛选性能瓶颈实战教程:掌握高效技巧,轻松应对海量数据处理挑战。本教程详解性能优化策略,助力快速筛选,提升系统响应速度。无论你是开发者还是管理员,都能从中获益,实现数据筛选效率飞跃,让帝国CMS在大数据环境下依然流畅运行。立即学习,解锁大数据处理新技能!
  • 帝国CMS统计多个数据表今日更新总数代码
    166阅读0条评论4个赞
    帝国CMS统计多表今日更新总数代码教程:通过SQL查询结合帝国CMS函数,汇总多个数据表中今日更新的记录总数。步骤包括编写SQL联合查询语句,利用`DATE()`函数筛选今日数据,结合帝国CMS的数据库操作函数执行查询,并输出结果。此教程教你高效获取多表今日更新概况,优化管理效率。
  • 帝国cms7.5无刷新 Ajax 点击加载更多列表信息源代码
    825阅读2条评论13个赞
    帝国CMS 7.5 Ajax无刷新加载,高效实现点击加载更多列表信息,精简源码仅展示核心功能,优化用户体验,提升网页加载效率。

如本文对您有帮助,就请墨鱼抽根烟吧!