dedecms增加php函数功能及在列表页获取当前栏目的文章数 -电脑资料

电脑资料 时间:2019-01-01 我要投稿
【www.unjs.com - 电脑资料】

   

    打开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>

最新文章