调用三级四级无限级栏目效果图
(此图片来源于网络,如有侵权,请联系删除! )
第一种自定义函数递归法
适用于前端简单样式用户,在include/extend.func.php最下面添加
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
/**
*取出所有分类
*@paramint$channel频道ID
*@returnstringwww.dede58.com织梦模板下载
*调用{dede:global.getalltypefunction='getalltype()'/}
*/
functiongetalltype($channel=0,$line=10)
{
$line=empty($line)?10:$line;
global$dsql,$result;
$dsql->SetQuery("SELECTid,typename,typenamedir,typelitpic,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
FROM`dede_arctype`WHEREreid='$channel'Andishidden<>1orderbysortrankasclimit0,$line");
$dsql->Execute($channel);
if($dsql->GetTotalRow($channel)>0)
{
$result.="<ul>\r\n";
while($row=$dsql->GetArray($channel))
{
$id=$row['id'];
$typename=$row['typename'];
$typelink=GetOneTypeUrlA($row);
$result.="<li>\r\n";
$result.="<ahref='{$typelink}'target='_blank'>{$typename}</a>\r\n";
getalltype($id,$line);
$result.="</li>\r\n";
}
$result.="</ul>\r\n";
}
return$result;
}
|
前台模板调用标签
{dede:global.getalltype function='getalltype()'/}
第二种标签嵌套法
适用于只调用出一级、二级、三级、四级的用户,直接在模板里写
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
<ul>
{dede:channelartlistrow=7typeid=top}
<!--顶级-->
<li>
<ahref="{dede:field.typeurl/}">{dede:fieldname='typename'/}</a>
<ul>
{dede:channeltype=sonnoself=yes}
<!--二级-->
<li>
<ahref="[field:typeurl/]"title="[field:typename/]">[field:typename/]</a>
<ul>
<!--三级-->
[field:idrunphp=yes]
global$dsql;
$sql="Selectid,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepathFROM`dede_arctype`
WHEREreid=@meAndishidden<>1orderbysortrankasclimit0,10";
$dsql->SetQuery($sql);
$dsql->Execute('t');
$result='';
while($row=$dsql->GetArray('t'))
{
$typename=$row['typename'];
$typeurl=GetOneTypeUrlA($row);
$result.=<<<TPL
<li><ahref="{$typeurl}">{$typename}</a></li>
TPL;
}
@me=$result;
[/field:id]
</ul>
</li>
{/dede:channel}
</ul>
</li>
{/dede:channelartlist}
</ul>
|
上面的是输出到三级栏目,如果需要四级栏目可以这样写
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
<!--三级/四级-->
[field:idrunphp=yes]
global$dsql;
$sql="Selectid,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepathFROM`dede_arctype`
WHEREreid=@meAndishidden<>1orderbysortrankasclimit0,10";
$dsql->SetQuery($sql);
$dsql->Execute('t');
$result='';
while($row=$dsql->GetArray('t'))
{
$row['typeurl']=GetOneTypeUrlA($row);
$result.="<ahref='{$row[typeurl]}'>{$row[typename]}</a>";
//四级
$nsql="Selectid,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
FROM`dede_arctype`WHEREreid=$row[id]Andishidden<>1orderbysortrankasclimit0,10";
$dsql->SetQuery($nsql);
$dsql->Execute('n');
while($nrow=$dsql->GetArray('n'))
{
$nrow['typeurl']=GetOneTypeUrlA($nrow);
$result.="<ahref='{$nrow[typeurl]}'>{$nrow[typename]}</a>";
}
}
@me=$result;
[/field:id]
|
免责声明:本站所有文章和图片均来自用户分享和网络收集,文章和图片版权归原作者及原出处所有,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请联系网站客服处理。