muban大师 发表于 2021-3-20 10:37:36

织梦channelartlist支持limit自定义数字开始计数解决方法

在织梦建站的时候遇到一个问题,首页需要调用产品二级栏目但是列表循环的第一条需要加上一个class="on"高亮样式,channelartlist标签指定id调用的话就固定死了,不利于后期添加新的栏目,这时需要channelartlist支持limit指定从第二条计数,织梦默认是不支持,接下来教大家解决方案。
       
        第一步:include\taglib\channelartlist.lib.php打开
       
          找到:$attlist = 'typeid|0]row|20]cacheid|';
       
          替换:$attlist = 'typeid|0]row|20]cacheid|,limit|';
       
       
       
        第二步:找到
       
          
       
               
                       
                               
                                       
$dsql->SetQuery("SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl]sitepath
                                          FROM `dede_arctype` WHERE $tpsql ORDER BY sortrank ASC LIMIT $totalnum");
                               
                       
               
       

       
        替换:
       
          
       
               
                       
                               
                                       
$limit = trim(preg_replace('#limit#is', '', $limit));
    if($limit!='') $limitsql = " LIMIT $limit ";
    else $limitsql = " LIMIT 0]$totalnum";
    $dsql->SetQuery("SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl]sitepath
                                          FROM `dede_arctype` WHERE $tpsql ORDER BY sortrank ASC $limitsql");
                               
                       
               
       

       
       
        标签调用(如图所示):
       
       
               
                       
                               
                                       
{dede:channelartlist limit='1,50'type ='son'typeid ='2' }{/dede:channelartlist}
                               
                       
               
       
       
       
       
https://www.adminbuy.cn/uploads/allimg/210320/1-210320103Q3310.png
页: [1]
查看完整版本: 织梦channelartlist支持limit自定义数字开始计数解决方法