织梦DedeCMS栏目列表调用子栏目并实现limit限制输出方法
在织梦DedeCMS中,使用channelartlist标签调用栏目列表时,默认无法灵活控制输出数量和起始位置。通过修改核心文件,可以为channelartlist标签增加limit属性,实现从指定位置开始输出子栏目的功能。
修改channelartlist.lib.php文件
打开 /include/taglib/channelartlist.lib.php 文件,找到以下代码行:
cacheid|
将其修改为:
cacheid|,limit|

添加limit参数处理代码
继续在文件中找到以下代码:
$dsql->SetQuery
在这行代码的上方插入以下代码:
$limit = trim(preg_replace('#limit#is', '', $limit));
if($limit!='') $limitsql = " LIMIT $limit ";
else $limitsql = " LIMIT 0,$totalnum";

替换原有LIMIT语句
继续找到以下代码:
LIMIT $totalnum
将其替换为:
$limitsql

前台模板标签调用示例
修改完成后,在前台模板中即可使用limit属性控制栏目输出。例如调用一个栏目:
{dede:channelartlist limit=1}
{dede:field.typeurl/}{dede:field.typename/}
{/dede:channelartlist}
调用从第二个栏目开始,输出两个栏目:
{dede:channelartlist limit=1,2}
{dede:field.typeurl/}{dede:field.typename/}
{/dede:channelartlist}
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
