首页 > CMS > 织梦DEDE > 正文

织梦DedeCMS栏目列表页统计并调用当前栏目文章数目的方法

2024-07-12 08:32:59
字体:
来源:转载
供稿:网友
  在做织梦dedecms模板时,经常需要在每个栏目列表页加上此栏目的文章数调用,下面就教大家具体的实现方法。   首先找到并打开include/common.func.php文件,在最后面加入下面这段代码:  
//统计栏目内容条数function GetTotalArc($tid){global $dsql;$sql = GetSonIds($tid);$row = $dsql->GetOne("Select count(id) as dd From zmb_archives where typeidin({$sql})");return $row['dd'];}//统计当前栏目信息数function dynamic_num($current_id){global $dsql;//读取当前栏目的子ID$sql = "SELECT id FROM zmb_arctype WHERE id='$current_id' ||topid='$current_id'";$dsql->SetQuery($sql);$dsql->Execute();while($row = $dsql->GetArray()){$arr[]=$row[id];}foreach($arr as $key=>$value){$type .= $value . ',';}$ty= "".$type."0";//echo $ty;$t_num = $dsql->GetOne("select count(*) as num from zmb_archives where typeidin($ty)");//echo $t_num[num];if(is_array($t_num)){return " ".$t_num[num]." ";}else{return "0" ;}}
  然后在列表页模板里面插入如下调用代码:  
(该栏目有{dede:type}[field:id function="dynamic_num(@me)" /]{/dede:type}篇文档)和[field:id runphp='yes'] @me = GetTotalArc(@me);[/field:id]
  下面是完整的调用实例:  
{dede:field name='typename'/}</b>(本栏目共有{dede:type}[field:id function="dynamic_num(@me)" /]{/dede:type}篇文档){dede:channel type='son' } <li><a href='[field:typelink/]'>[field:typename/]</a>(<span>[field:ID runphp='yes'] @me = GetTotalArc(@me);[/field:ID]</span>)</li>{/dede:channel}

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表