织梦cms增加php函数功能及在列表页获取当前栏目的文章数

时间:2014-08-24

打开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}
<div class="cate">
    <h2>当前栏目</>h2>
     <p>{dede:channel type='son' currentstyle="<a class='hcate' href='~typelink~'>~typename~</>a>"}<a href="[field:typeurl/]">[field:typename/][field:id function="dynamic_num(@me)" /]</a>{/dede:channel}</p>
</div>


上一条:织梦cms v5.6 升级至v5.7程序使用说明 下一条:DedeCMS V5.7SP/V5.7/V5.6安全补丁(20120430)

相关文章

最新文章