在DedeCMS中,要在列表页模板中调用当前栏目文章数,可以通过修改include/common.func.php文件来添加自定义函数,具体步骤如下:
修改 include/common.func.php 文件
1、统计当前栏目文章数
// 统计当前栏目文章数 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']; }
2、统计包括子栏目的文章数
// 统计包括子栏目的文章数 function dynamic_num($current_id){ global $dsql; // 读取当前栏目的子ID $sql = "SELECT id FROMdede_arctype
WHERE id='$current_id' OR topid='$current_id'"; $dsql>SetQuery($sql); $dsql>Execute(); while($row = $dsql>GetArray()){ $arr[]=$row[id]; } foreach($arr as $key=>$value){ $type .= $value . ','; } $ty = rtrim($type, ','); //echo $ty; $t_num = $dsql>GetOne("select count(*) as num fromdede_archives
where typeid in($ty)"); //echo $t_num[num]; if(is_array($t_num)){ return "本栏目共有".$t_num[num]."篇文章"; }else{ return "本栏目共有0篇文章" ; } }
模板中的调用代码
在模板文件中,可以使用以下代码来显示当前栏目的文章数:
{dede:field name='typename'/}</b>(该类拥有{dede:type}[field:id function="dynamic_num(@me)" /]{/dede:type}个文档)
或者:
<li><a href='[field:typelink/]'>[field:typename/]</a>(<span>[field:ID runphp='yes'] @me = GetTotalArc(@me);[/field:ID]</span>)</li>
通过以上方法,可以在DedeCMS的列表页模板中成功调用并显示当前栏目的文章数量,从而增强用户体验和网站的信息展示效果。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1219591.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复