DEDECMS技巧-MAXWO.COM给channel实现limit限制功能

修改步骤:

找到标签文件include\taglib\channel.lib.php

大概在36行

找到   $attlist =

“typeid|0,reid|0,row|100,col|1,type|son,currentstyle|,cacheid|”;

替换为

$attlist =”typeid|0,reid|0,row|100,col|1,type|son,currentstyle|,cacheid|,limit|“;

找到:

$innertext = $ctag->GetInnerText();
$line = empty($row) ? 100 : $row;

在上面这段代码下面添加:
//limit条件
$limit = trim(eregi_replace('limit','',$limit));
if($limit!=''){
    $limit = " $limit ";
}else{
    $limit = "0,$line ";
}
然后查找:
if($type=='top')
{
    $sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
      From `dede_arctype` WHERE reid=0 And ishidden<>1 order by sortrank asc limit 0, $line ";
}
else if($type=='son')
{
    if($typeid==0) return '';
    $sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
      From `dede_arctype` WHERE reid='$typeid' And ishidden<>1 order by sortrank asc limit 0, $line ";
}
else if($type=='self')
{
    if($reid==0) return '';
    $sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
        FROM `dede_arctype` WHERE reid='$reid' And ishidden<>1 order by sortrank asc limit 0, $line ";
}

将里面的

limit 0, $line 

全部替换成

limit $limit 

完成!!MAXWO亲测无误!

最后注意调用语句,type=‘top’ 必须写在limit前面方可生效.
{dede:channel type='top' limit='6,1'}