织梦dedecms拓展channel如何实现limit功能

92模板   2020-12-30   收藏本文

本文主要介绍了织梦dedecms拓展channel如何实现limit功能,在函数lib_channel里面加上limit条件,然后将所有查询条件的limit 0,$row改为$limitsql就可以了,有此需要的朋友可以参考看看。

织梦网站源码

由于网站栏目多次需要调用同一栏目下的栏目比如顶级栏目6 下级栏目5.4.3.2.1 需要分两次分别调出543和21,row调用不出这种效果所以就把row改为了Limit用法了比较方便,以前小编分享过dedecms如何让channel支持limit属性的方法,下面来看看织梦实现limit功能。

修改方法:

打开文件 include\taglib\channel.lib.php 在函数lib_channel里面加上

//limit条件

    $limit = trim(eregi_replace('limit','',$limit));

    if($limit!='') $limitsql = " limit $limit ";

    else $limitsql = " limit 0,7 ";

    $orwhere = '';

    if(isset($orwheres[0])) {

        $orwhere = join(' And ',$orwheres);

        $orwhere = ereg_replace("^ And",'',$orwhere);

        $orwhere = ereg_replace("And[ ]{1,}And",'And ',$orwhere);

    }

    if($orwhere!='') $orwhere = " where $orwhere ";//二次开发

在下面这段代码后面

function lib_channel(&$ctag,&$refObj)

{

    global $dsql;

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

    FillAttsDefault($ctag->CAttribute->Items,$attlist);

    extract($ctag->CAttribute->Items, EXTR_SKIP);

    $innertext = $ctag->GetInnerText();

    $line = empty($row) ? 100 : $row;

所有查询条件的limit 0,$row改为$limitsql

然后保存一下就可以了

以上就是关于织梦实现limit功能的所有内容,希望可以帮到大家,欢迎扫码加微信一起交流~

微信公众号

展开