dedecms织梦的arclist标签的二次开发,增加参数

首先官网的开发文档

http://help.dedecms.com/manual/tagmanual/DedeTagmanual_Finnal/arclist.htm

我们增加 mydata参数
形式如下

 {dede:arclist row=14 titlelen=32  mydata="params"}

修改文件 \include\taglib\arclist.lib.php

1)增加参数获取 在 function lib_arclist( &$ctag, &$refObj ) 函数里面

$mydata = $ctag->GetAtt(‘mydata’);

2)传递参数到 函数 lib_arclistDone

return lib_arclistDone
           (
             $refObj, $ctag, $typeid, $ctag->GetAtt('row'), $ctag->GetAtt('col'), $titlelen, $infolen,
             $ctag->GetAtt('imgwidth'), $ctag->GetAtt('imgheight'), $listtype, $orderby,
             $ctag->GetAtt('keyword'), $innertext, $envs['aid'], $ctag->GetAtt('idlist'), $channelid,
             $ctag->GetAtt('limit'), $flag,$ctag->GetAtt('orderway'), $ctag->GetAtt('subday'), $ctag->GetAtt('noflag'),
             $tagid,$pagesize,$isweight,$mydata
           );
}

3) 函数 lib_arclistDone定义处增加 mydata

function lib_arclistDone(&$refObj, &$ctag, $typeid=0, $row=10, $col=1, $titlelen=30, $infolen=160,
        $imgwidth=120, $imgheight=90, $listtype='all', $orderby='default', $keyword='',
        $innertext='', $arcid=0, $idlist='', $channelid=0, $limit='', $att='', $order='desc', $subday=0, $noflag='',$tagid='', $pagesize=0, $isweight='N',$mydata='')

4) 在 函数 lib_arclistDone 里面为所欲为吧

  $mydata = AttDef($mydata,'默认参数');
  if($mydata == '默认参数')
  {
   //您的需求实现代码
  }