当前位置:首页 > CMS教程 > DeDecms > 列表

Dedecms实现自动统计当前栏目文档总数2种方法

发布:smiling 来源: PHP粉丝网  添加日期:2014-03-16 22:13:54 浏览: 评论:0 

统计当前栏目有多少文章数量我们有两种办法,一种直接在模板页面运行php 并执行sql,还有一种是直接在extend.func.php中加一个统计函数,然后在模板页面调用即可.

SQL语句中,有统计的函数,我们可以通过在织梦中使用SQL语句统计的方法,在列表页内显示该栏目共有多少篇文章,这样做的好处是,有助于提升用户体验,比如说我一个文章列表下面有10篇文章,就自动统计出10篇,到20篇的时候自动统计成20篇,这样用户对网站的信息就一目了然了.

实现这个功能有2种方法:

第一种:runphp='yes'

第一种实现方法就是利用织梦自带的runphp参数来实现这个功能,只需要在您需要显示统计数量的地方直接加入以下代码:

  1. {dede:field.typeid runphp='yes'}       
  2.         global $dsql;       
  3.         $row = $dsql->GetOne("select count(*) as dd from dede_archives where typeid = @me");       
  4.         @me = $row['dd'];       
  5. {/dede:field.typeid}  

保存后重新生成Html文件即可看到具体的效果,但请注意:

1.本代码无法统计副栏目的文档;

2.本代码可用在列表和内容页;

3.代码生成后的效果的动态的,如果添加完内容,必须重新生成相关页面;

4.无法统计无主表(例如:分类信息)的文档总数;

第二种:function

第二种就是我们通常所说的函数,在织梦(DedeCMS)中,我们可以利用自定义函数来实现各种效果,实现的具体方法为:

1.在/include/extend.func.php 文件的?>上一行加入以下代码:

  1. function GetTypeNum($tid){       
  2.         global $dsql;       
  3.         $row = $dsql->GetOne("select count(*) as dd from dede_archives where typeid = $tid");       
  4.         return $row['dd'];       

2.在模板需求统计栏目文档的地方加入以下代码:

{dede:field.typeid function="GetTypeNum(@me)"/}

保存后生成警惕Html即可,在这里实际上就是执行了自定义函数接口中的GetTypeNum函数,其注意事项与runphp='yes'方法一样.

Tags: Dedecms 自动统计 当前栏目

分享到: