織夢(mèng)dedecms如何調(diào)用當(dāng)前欄目文章數(shù)?
織夢(mèng)DEDECMS調(diào)用當(dāng)前欄目文章數(shù)方法
做模板時(shí),經(jīng)常需要為每個(gè)欄目加上此欄目的文章數(shù)。和大家分享下實(shí)現(xiàn)的方法,此方法適合5.6及5.7、5.7sp1其它未測(cè)
推薦學(xué)習(xí):dedecms教程
步驟/方法
修改 include/common.func.php文件,在最后加以下代碼:
//統(tǒng)計(jì)欄目文章數(shù) function?GetTotalArc($tid){ global?$dsql; $sql?=?GetSonIds($tid); $row?=?$dsql->GetOne("Select?count(id)?as?dd?From?zmb_archives?where?typeid? in({$sql})"); return?$row['dd']; } //統(tǒng)計(jì)當(dāng)前欄目信息數(shù)? function?dynamic_num($current_id){? global?$dsql;? //讀取當(dāng)前欄目的子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?typeid? in($ty)");? //echo?$t_num[num];? if(is_array($t_num)){? return?"?".$t_num[num]."?";? }else{? return?"0"?;? }? }
模板里的調(diào)用代碼:
(該類擁有{dede:type}[field:id function=”dynamic_num(@me)” /]{/dede:type}
個(gè)文檔)
和
[field:id?runphp='yes']?@me?=?GetTotalArc(@me);[/field:id]
例如:
{dede:field?name='typename'/}(該類擁有{dede:type}[field:id? function="dynamic_num(@me)"?/]{/dede:type}個(gè)文檔) {dede:channel?type='son'?}?
{/dede:channel}
? 版權(quán)聲明
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載。
THE END
喜歡就支持一下吧
相關(guān)推薦