dede中统计栏目文章数的两种方法

本文主要介绍了dede中统计栏目文章数的两种方法,经测试都可以实现,可以根据需要进行选择
方法一:
涉及到文件:include/common.func.php
在include/common.func.php最下面也就是?>前加入以下代码

function GetTotalArc($tid){
global $dsql;
$sql = GetSonIds($tid);
$row = $dsql->GetOne("Select count(id) as dd From dede_archives where typeid in({$sql})");
return $row['dd'];
}

调用方法:

[field:ID function='GetTotalArc(@me)'/]

[field:ID runphp='yes'] @me = GetTotalArc(@me);[/field:ID]

比如在你的主页模板里添加如下代码:

共{dede:type}[field:ID function='GetTotalArc(@me)'/] {/dede:type}篇

或在栏目名称后面添加如下代码:

({dede:type}[field:ID function='GetTotalArc(@me)'/] {/dede:type})

方法二:

第一步:打开include/common.func.php文件,在最后的?>之前加上:
代码如下:

//统计栏目文章数
function GetTotalArc($tid){
global $dsql;
$sql = GetSonIds($tid);
$row = $dsql->GetOne("Select count(id) as dd From dede_archives where typeid in({$sql})");
return $row['dd'];
}
//统计结束

第二步: 就可以在模板上用以下代码
代码如下:

{dede:channel type='top' typeid=''}
<a href='[field:typelink /]'>[field:typename/]</a> ([field:ID runphp='yes'] @me = GetTotalArc(@me);[/field:ID])
{/dede:channel}

比如在主页模板上栏目名称({dede:field name='typename'/})

后面添加如下代码:
代码如下:

{dede:type}[field:ID runphp='yes'] @me = GetTotalArc(@me);[/field:ID]{/dede:type}

亲测可用,可以自行选择喜欢的方法!