DedeCMS增加栏目文章数量统计功能(含主栏目与副栏目)

DedeCMS系统自带的是没有栏目下文章数量统计的功能的,很多时候我们在做网站的时候需要展示每个栏目下文章数量,这个时候就要二次扩展了,其实实现栏目文章数量统计功能并不难,但是网上好多教程过于古老,并不能生效,余斗今天就给出有效的解决方法:

打开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]
//此中调用当栏目下无文章时显示“0”

 

实现效果如下图:

但是余斗在做站的时候发现,如果我们想调用副栏目下文章数量的时候这个调用标签就是失效的,这其实是php代码的问题,要实现调用副栏目下文章数量,只需要稍微改动下即可:

同样是打开include/common.func.php文件,在最下面加入以下代码:


//统计副栏目文章数开始

function GetTotalArca($tid){

global $dsql;

$sql = GetSonIds($tid);

$row = $dsql->GetOne(
“Select count(id) as dd From dede_archives where typeid2 in({$sql})”);


return $row[
‘dd’];

}


//统计副栏目文章数结束

 

然后在自己需要调用副栏目文章数量的地方加上调用标签:

[field:ID function=
‘GetTotalArca(@me)’/]
//此中调用当副栏目下无文章时显示“空”

 

[field:ID runphp=
‘yes’] @me = GetTotalArca(@me);[/field:ID]
//此中调用当副栏目下无文章时显示“0”

 

这样就完美实现了增加栏目文章数量统计功能(含主栏目与副栏目),快去试试吧!