英德网站制作dede织梦模板中,有些客户是希望在列表页统计出文章总数。但是这个方法在官方网站上并没有人去研究,蔚蓝也被这个问题困惑了很久,几经尝试之下,还是找到了两种方法,这两种方法各有千秋,大家可以自行深入探讨一下。
第一种方法就是利用织梦内容管理系统自带的runphp参数来实现这个功能,即runphp='yes'
我们在需要显示统计文章总数量的列表页模板,直接添加以下代码:
dede:field.typeid runphp='yes'}
global $dsql;
$row = $dsql->GetOne("select count(*) as dd from dede_archives where typeid = @me");
@me = $row['dd'];
{/dede:field.typeid}
然后保存重新生成,就可以看到具体的效果了。
遗憾的是,这个方法有个弊端,那就是无法统计副栏目的文档数量,并且只能用在列表页与内容页模板上,每次添加完新内容,必须重新生成相关页面才可以看到效果。
第二种方法则是需要添加自定义函数来实现了。两个步骤就可以
1,在根目录找到/include/extend.func.php 文件,最末尾的?>上一行加入以下代码:
function GetTypeNum($tid){
global $dsql;
$row = $dsql->GetOne("select count(*) as dd from dede_archives where typeid = $tid");
return $row['dd'];
}
以上代码的意思是在function里面添加了自定义函数GetTypeNum函数,让在数据库里面调用统计文章数量。
2,然后我们在模板页面上,需要统计栏目文档总数量的地方加入以下代码:
{dede:field.typeid function="GetTypeNum(@me)"/}
保存后重新生成Html就可以了。
当然了,由于mysql的开放性与织梦系统的开源特质,要实现文章列表统计文章总数其实是有着非常多的办法的,蔚蓝这里只不过是找出其中两种办法,如果大家有更多更好的办法,欢迎大家一起分享哈。