织梦侠
WWW.2L3.NET

拓展channel标签实现limit功能

由于网站栏目多次需要调用同一栏目下的栏目比如顶级栏目6 下级栏目5.4.3.2.1 需要分两次分别调出543和21 感觉channel就比较吃力了全部写SQL又太多,可能是我还不知道有其他方法吧。row调用不出这种效果所以就把row改为了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 ";//二次开发







--------------------------------------------------------------------------------



把上面的代码,添加到函数lib_channel(具体位置为:)



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 OK 保存

转载请注明文章来自织梦侠[秩名]作者的-拓展channel标签实现limit功能
联系作者
取消
这个作者很懒什么也没留下!
打赏作者
取消

本文作者无偿奉献,就打赏给我们织梦侠吧!

扫码支付
扫码打赏,建议金额1-10元

打开支付宝扫一扫,即可进行扫码打赏哦

提醒:打赏金额将直接进入对方账号,无法退款,请您谨慎操作。