栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > PHP > php开源框架 > dedecms

织梦给channelartlist和channel加limit属性

dedecms 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

织梦给channelartlist和channel加limit属性

织梦中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条件

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

if($limit!=''){

$limit = " $limit ";

}else{

$limit = " limit 0,$line ";

}

2.然后把下面的

if($type=='top')

{

$sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath

From `dede_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 `dede_arctype` WHERe reid='$typeid' And ishidden<>1 order by sortrank asc limit $limit ";}

else if($type=='self'){

if($reid==0) return '';$sql = "SELECt id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath

FROM `dede_arctype` WHERe reid='$reid' And ishidden<>1 order by sortrank asc limit 0, $line ";

}

将limit 0, $line 改成 limit $limit

3.使用方法:

{dede:channel type='son' typeid=68 limit='0,6'}

[field:typename/]

{/dede:channel}

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


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/7989.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号