dedecms增加php函數功能及在列表頁獲取當前欄目的文章數

dedecms二次開發:自定義模型使用教程
dedecms增加php函數功能及在列表頁獲取當前欄目的文章數


打開include/common.func.php,在其中任一行(的中間任一行)中加上如下函數.





function dynamic_num($current_id){

global $dsql;

$t_num = $dsql->GetOne("select count(*) as num from `dede_archives` where typeid='$current_id'");

if(is_array($t_num)){

return "本欄目共有".$t_num[num]."篇文章";

}else{

return "本欄目共有0篇文章" ;

}

}



在列表頁中這樣調用:{dede:type}[field:id function="dynamic_num(@me)" /]{/dede:type}


加入函數:





//統計包括子欄目的文章數****

function GetArtTotal($id){



//*****統計欄目文章數



//1.統計當前欄目文章數

$dsql = new DedeSql(false);

$row = $dsql->GetOne("select count(id) as ArtSum from dede_archives where typeid=$id; ");



//2.統計子欄目文章數

$dsql = new DedeSql(false);

//$sql = TypeGetSunID($tid,$dsql);取得子欄目ID

$rowSun = $dsql->GetOne("Select count(t.ID) as dd from dede_archives t left join dede_arctype u1 on u1.id=t.typeid

where (u1.reID=$id) ");





//3. 1+2得出總文章數

return $row['ArtSum']+$rowSun['dd'];

}



//******統計包括子欄目的文章數



調用方法:





{dede:channel type='self' row='100'? }[field:typename/]([field:id function=GetArtTotal(@me)/]){/dede:channel}



當前欄目h2>



{dede:channel type='son' currentstyle="~typename~a>"}[field:typename/][field:id function="dynamic_num(@me)" /]a>{/dede:channel}p>



div>






發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章