織夢dedecms做網站的時候要求要好多分類,每個分類下邊需要有文章,可是在考慮到用戶體驗方面。我就想如果加上當前欄目下邊的條數 會讓讀者一幕了然;
所以我特意查了一下資料,在這分享給大家:
第一種方法
打開include/common.func.php文件
在最后的?>之前加上
//統(tǒng)計欄目文章數
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'];
}
第二種方法
打開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}
如果要統(tǒng)計本欄目及與子欄目的總數,則可以用下面的函數:
//統(tǒng)計包括子欄目的文章數 function GetArtTotal($id){
//1.統(tǒng)計當前欄目文章數 $dsql = new DedeSql(false); $row = $dsql->GetOne("select count(id) as ArtSum from dede_archives where typeid=$id; ");
//2.統(tǒng)計子欄目文章數 $dsql = new DedeSql(false); $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:field.typeid function="GetArtTotal(@me)"/}
版權聲明: 本站資源均來自互聯網或會員發(fā)布,如果侵犯了您的權益請與我們聯系,我們將在24小時內刪除!謝謝!
轉載請注明: 織夢調用當前欄目下的文章數的方法