![]() |
|
|||||||
![]() |
|
|
Thread Tools | Display Modes |
|
|
|
#1
IP: 112.84.243.230
|
|||
|
|||
|
做网站的时候通常会调用指定的栏目,而channel标签默认不支持limit属性,现在教大家如果给channel增加limit属性。调用方法,在原来的基础上增加了一个limit。
limit是起点,row是条数 ,模版调用例子: {dede:channel type='son' limit='3' typeid='1' reid='1' row='5' "<a href='~typelink~' class='thisclass'>~typename~</a> |"} <a href="[field:typelink/]"><span class="aaa">[field:typename/]</span></a> {/dede:channel} 修改步骤: 找到标签文件include\taglib\channel.lib.php 1、 找到$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|0"; 2、 if($type=='top') { $sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath From `#@__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 `#@__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 `#@__arctype` WHERE reid='$reid' And ishidden<>1 order by sortrank asc limit 0, $line "; } //And id<>'$typeid' $needRel = false; $dtp2 = new DedeTagParse(); $dtp2->SetNameSpace('field','[',']'); $dtp2->LoadSource($innertext); //检查是否有子栏目,并返回rel提示(用于二级菜单) if(preg_match('#:rel#', $innertext)) $needRel = true; if(empty($sql)) return ''; $dsql->SetQuery($sql); $dsql->Execute(); $totalRow = $dsql->GetTotalRow(); //如果用子栏目模式,当没有子栏目时显示同级栏目 if($type=='son' && $reid!=0 && $totalRow==0) { $sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath FROM `#@__arctype` WHERE reid='$reid' And ishidden<>1 order by sortrank asc limit 0, $line "; $dsql->SetQuery($sql); $dsql->Execute(); } 把上面四个limit 0, $line 修改成 limit $limit, $line 。修改后如下: if($type=='top') { $sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath From `#@__arctype` WHERE reid=0 And ishidden<>1 order by sortrank asc limit $limit, $line "; } else if($type=='son') { if($typeid==0) return ''; $sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath From `#@__arctype` WHERE reid='$typeid' And ishidden<>1 order by sortrank asc limit $limit, $line "; } else if($type=='self') { if($reid==0) return ''; $sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath FROM `#@__arctype` WHERE reid='$reid' And ishidden<>1 order by sortrank asc limit $limit, $line "; } //And id<>'$typeid' $needRel = false; $dtp2 = new DedeTagParse(); $dtp2->SetNameSpace('field','[',']'); $dtp2->LoadSource($innertext); //检查是否有子栏目,并返回rel提示(用于二级菜单) if(preg_match('#:rel#', $innertext)) $needRel = true; if(empty($sql)) return ''; $dsql->SetQuery($sql); $dsql->Execute(); $totalRow = $dsql->GetTotalRow(); //如果用子栏目模式,当没有子栏目时显示同级栏目 if($type=='son' && $reid!=0 && $totalRow==0) { $sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath FROM `#@__arctype` WHERE reid='$reid' And ishidden<>1 order by sortrank asc limit $limit, $line "; $dsql->SetQuery($sql); $dsql->Execute(); } |
![]() |
| Currently Active Users Viewing This Thread: 3 (0 members and 3 guests) | |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| dedecms使用sql批量维护网站内容 | topvip | DedeCMS | 0 | 2011-03-20 06:59 AM |
| Dedecms教程:栏目页面转换为单独页面 | topvip | DedeCMS | 0 | 2010-09-09 12:44 AM |
| dedecms英文模板 英文网站程序的选择 | topvip | DedeCMS | 0 | 2010-09-06 09:16 PM |
| 使用dedecms制作英文站的技巧说明 | topvip | DedeCMS | 0 | 2010-09-06 09:12 PM |
| dedecms 5.1 utf-8版本英文修改方法 | topvip | DedeCMS | 0 | 2010-09-06 09:09 PM |