在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("selec catid,catname,child,style,linkurl,item from {$db->pre}category wher $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,就是为负数。
get_maincata($c[catid], $mid, 1) 函数解释
$c[catid] 是动态ID,为上级栏目ID调用变量,一级栏目时传多个栏目ID,需要用引号包起来。
$mid 是所要调用的频道ID,当前面有传分类ID时,该参数不起作用,也就是前面的栏目ID我们可以传多个不同频道的栏目ID
1 是栏目的推荐级别,数字不能小于0,就是为负数。