找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 102|回复: 0

[cms教程] 织梦给channelartlist和channel加limit属性

[复制链接]

该用户从未签到

发表于 2018-8-9 08:02:31 | 显示全部楼层 |阅读模式

您需要 登录 才可以下载或查看,没有账号?立即注册

×
织梦中channelartlist、channel 标签不支持limit属性,下面教大家如何使这两个标签也支持limit属性。
         

        方法/步骤

        1、给channelartlist标签 加limit属性

        channelartlist标签在5.7中只有row属性,如果是需要频道页面样式比较独特的网站,不能够满足循环调用的需求,所以,给它加上limit属性就好了。

        给这个标签加limit属性也非常容易,dedecms的程序优点就在于扩展。

         

        打开include/taglib/channelartlist.lib.php文件,约62行处,在下面加一行

        if(empty($totalnum)) $totalnum = 20;

        if(!empty($limit)) $totalnum = $limit;

        这样,如果有limit属性的话,就可以用limit属性来控制调用的记录数量了。

         

        2、给channel标签 加limit属性

        最近开发一个网站发现我们的DEDECMS系统在channel 中不能使用limit,很是着急,上网搜索也没有找到解决方案。没有办法,只好自己研究,其实很简单,分享出来给大家。

        首先请大家打开include/taglib/channel.lib.php文件,然后找到

        1.在$line = empty($row) ? 100 : $row;

        在它的下面加上下面代码

        //limit条件
         

       
               
                       
                               
                                       
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        01
                                                                               
                                                                                        $limit = trim(eregi_replace('limit','',$limit));
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        02
                                                                               
                                                                                         
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        03
                                                                               
                                                                                        if($limit!=''){
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        04
                                                                               
                                                                                         
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        05
                                                                               
                                                                                        $limit = " $limit ";
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        06
                                                                               
                                                                                         
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        07
                                                                               
                                                                                        }else{
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        08
                                                                               
                                                                                         
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        09
                                                                               
                                                                                        $limit = " limit 0]$line ";
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        10
                                                                               
                                                                                         
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        11
                                                                               
                                                                                        }
                                                                       
                                                               
                                                       
                                               
                                       
                               
                       
               
       

        2.然后把下面的

       
               
                       
                               
                                       
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        01
                                                                               
                                                                                        if($type=='top')
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        02
                                                                               
                                                                                         
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        03
                                                                               
                                                                                        {
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        04
                                                                               
                                                                                         
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        05
                                                                               
                                                                                        $sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl]sitepath
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        06
                                                                               
                                                                                         
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        07
                                                                               
                                                                                        From `dede_arctype` WHERE reid=0 And ishidden1 order by sortrank asc limit 0] $line ";
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        08
                                                                               
                                                                                         
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        09
                                                                               
                                                                                        }else if($type=='son')
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        10
                                                                               
                                                                                         
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        11
                                                                               
                                                                                        {
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        12
                                                                               
                                                                                         
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        13
                                                                               
                                                                                        if($typeid==0) return '';$sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl]sitepath
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        14
                                                                               
                                                                                         
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        15
                                                                               
                                                                                        From `dede_arctype` WHERE reid='$typeid' And ishidden1 order by sortrank asc limit $limit ";}
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        16
                                                                               
                                                                                         
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        17
                                                                               
                                                                                        else if($type=='self'){
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        18
                                                                               
                                                                                         
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        19
                                                                               
                                                                                        if($reid==0) return '';$sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl]sitepath
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        20
                                                                               
                                                                                         
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        21
                                                                               
                                                                                        FROM `dede_arctype` WHERE reid='$reid' And ishidden1 order by sortrank asc limit 0] $line ";
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        22
                                                                               
                                                                                         
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        23
                                                                               
                                                                                        }
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        24
                                                                               
                                                                                         
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        25
                                                                               
                                                                                        将limit 0] $line 改成 limit $limit
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        26
                                                                               
                                                                                         
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        27
                                                                               
                                                                                        3.使用方法:
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        28
                                                                               
                                                                                         
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        29
                                                                               
                                                                                        {dede:channel type='son' typeid=68 limit='0]6'}
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        30
                                                                               
                                                                                         
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        31
                                                                               
                                                                                        [field:typename/,
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        32
                                                                               
                                                                                         
                                                                       
                                                               
                                                       
                                               
                                               
                                                       
                                                               
                                                                       
                                                                               
                                                                                        33
                                                                               
                                                                                        {/dede:channel}
                                                                       
                                                               
                                                       
                                               
                                       
                               
                       
               
       


        以上解决方案发现一个问题:就是后面的channel标签都需要加limit才行,不然输不出。
回复

使用道具 举报

网站地图|页面地图|文字地图|Archiver|手机版|小黑屋|找资源 |网站地图

GMT+8, 2024-9-29 17:30

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表