找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1368|回复: 0

[分享] Dedecms实现自动统计当前栏目文档总数的方法

[复制链接]
发表于 2018-6-20 20:29:11 | 显示全部楼层 |阅读模式 来自 中国–河南–新乡
本文实例讲述了Dedecms实现自动统计当前栏目文档总数的方法。分享给大家供大家参考。具体分析如下:
统计当前栏目有多少文章数量我们常用的有两种办法,一种直接在模板页面运行php 并执行sql,还有一种是直接在extend.func.php中加一个统计函数,然后在模板页面调用即可.
SQL语句中,有统计的函数,我们可以通过在织梦中使用SQL语句统计的方法,在列表页内显示该栏目共有多少篇文章,这样做的好处是,有助于提升用户体验,比如说我一个文章列表下面有10篇文章,就自动统计出10篇,到20篇的时候自动统计成20篇,这样用户对网站的信息就一目了然了.
现将这2种方法分述如下:
第一种:
  1. 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 文件的?>上一行加入以下代码:

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

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

代码如下:
  1. {dede:field.typeid function="GetTypeNum(@me)"/}
复制代码

保存后生成警惕Html即可,在这里实际上就是执行了自定义函数接口中的GetTypeNum函数,其注意事项与runphp='yes'方法一样.
希望本文所述对大家的dedecms建站有所帮助。

发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;

如何回报帮助你解决问题的坛友,好办法就是点击帖子下方的评分按钮给对方加【金币】不会扣除自己的积分,做一个热心并受欢迎的人!

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则 需要先绑定手机号

关闭

站长推荐上一条 /1 下一条

QQ|侵权投诉|广告报价|手机版|小黑屋|西部数码代理|飘仙建站论坛 ( 豫ICP备2022021143号-1 )

GMT+8, 2024-12-23 16:27 , Processed in 0.048547 second(s), 8 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表