destoon采集论坛

 找回密码
 立即注册
查看: 389|回复: 3

destoon 栏目多级循环调用多个指定id分类下面的栏目方法

[复制链接]

79

主题

258

回帖

1247

积分

金牌会员

Rank: 6Rank: 6

积分
1247
发表于 2015-4-27 17:15:16 | 显示全部楼层 |阅读模式
在include/global.func.php中添加如下函数

function get_maincata($catid, $moduleid, $level = -1) {
        global $db;
        $condition = $catid ? "parentid in($catid)" : "moduleid=$moduleid AND parentid=0";
        if($level >= 0) $condition .= " AND level=$level";
        $cat = array();
        $result = $db->query("SELECT catid,catname,child,style,linkurl,item FROM {$db->pre}category WHERE $condition ORDER BY listorder,catid ASC", 'CACHE');
        while($r = $db->fetch_array($result)) {
                $cat[] = $r;
        }
        return $cat;
}

顶级分类传
{php $big = get_maincata("1,2,3,4,5,6,7,8,9", $mid, 1);}
{loop $big}
下级分类传
{php $samll = get_maincata($v[catid], $mid, 1);}

$v[catid]为传动态分类id  参照默认多级栏目调用


示例三级调用:

{php $mid=5;}
{php $big = get_maincata("1,2,3,4,5,6,7,8,9", $mid, 1);}
{loop $big $i $c}
一级栏目调用显示HTML


{php $samll = get_maincata($c[catid], $mid, 1);}
{loop $sall $k $v}
二级栏目代码


{php $sanji = get_maincata($c[catid], $mid, 1);}
{loop $sanji $j $s}
三级栏目代码
{/loop}


{/loop}


{/loop}

四级调用继续在三级里面传就行了,不过三级应该就够用了。

get_maincata($c[catid], $mid, 1) 函数解释

$c[catid] 是动态ID,为上级栏目ID调用变量,一级栏目时传多个栏目ID,需要用引号包起来。

$mid 是所要调用的频道ID,当前面有传分类ID时,该参数不起作用,也就是前面的栏目ID我们可以传多个不同频道的栏目ID

1 是栏目的推荐级别,数字不能小于0,就是为负数。


模板堂出品,必属精品!www.dtmoban.com
回复

使用道具 举报

38

主题

2078

回帖

4496

积分

论坛元老

Rank: 8Rank: 8

积分
4496
发表于 2015-4-27 17:39:37 | 显示全部楼层

谢谢lz共享,非常好
回复 支持 反对

使用道具 举报

50

主题

3415

回帖

7668

积分

论坛元老

Rank: 8Rank: 8

积分
7668
发表于 2015-4-28 08:47:43 | 显示全部楼层

不错,收藏了
回复 支持 反对

使用道具 举报

8

主题

58

回帖

170

积分

注册会员

Rank: 2

积分
170
发表于 2015-7-29 21:01:00 | 显示全部楼层

终于找到了 谢谢ieee
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|destoon采集论坛

GMT+8, 2025-12-16 09:54 , Processed in 0.015459 second(s), 20 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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