DedeCMS列表页自动统计当前栏目文章总数的方法

本次教程可以通过该方法在列表页内显示该栏目共有多少篇文章,有助于提升用户体验。比如说我一个文章列表下面有10篇文章,就自动统计出10篇,到20篇的时候自动统计成20篇。 实现 […]



本次教程可以通过该方法在列表页内显示该栏目共有多少篇文章,有助于提升用户体验。比如说我一个文章列表下面有10篇文章,就自动统计出10篇,到20篇的时候自动统计成20篇。

DedeCMS列表页自动统计当前栏目文章总数的方法(图1)

实现这个功能有两种具体的方法:

第一种:runphp=’yes’

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


{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}

第二种:function

我们通常所说的函数,在织梦(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'];
}

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


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

注意事项:

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

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

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

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


加载中~