分享2种方法获取织梦所有栏目(无限级栏目输出):

第一种自定义函数递归法

适用于前端简单样式用户,在 include/extend.func.php 最下面添加

/**

* 取出所有分类

* @param     int   $channel  频道ID

* @return    string

* 调用{dede:global.getalltype function='getalltype()'/}

*/function getalltype($channel=0,$line=10){

$line = empty($line) ? 10 : $line;

global $dsql,$result;

$dsql->SetQuery("SELECT id,typename,typenamedir,typelitpic,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath            FROM `SzsFox_arctype` WHERE reid='$channel' And ishidden<>1 order by sortrank asc limit 0, $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 .= "<a href='{$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()'/}

第二种标签嵌套法:

适用于只调用出一级、二级、三级、四级的用户,直接在模板里写

<ul>

    {dede:channelartlist row=7 typeid=top}

<!-- 顶级 -->

<li class="top">

<a href="{dede:field.typeurl/}" >{dede:field name='typename'/}</a>

<ul class="sub">

{dede:channel type=son noself=yes}

<!-- 二级 -->

<li>

<a href="[field:typeurl/]"  title="[field:typename/]">[field:typename/]</a>

<ul><!-- 三级 -->[field:id runphp=yes]global $dsql;$sql = "Select id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath FROM `SzsFox_arctype` WHERE reid=@me And ishidden<>1 order by sortrank asc limit 0,10";$dsql->SetQuery($sql);$dsql->Execute('t');$result = '';while($row = $dsql->GetArray('t')){

    $typename = $row['typename'];

    $typeurl = GetOneTypeUrlA($row);$result .= <<< TPL<li><a href="{$typeurl}">{$typename}</a></li>TPL;}@me = $result;[/field:id]

</ul>

</li>

{/dede:channel}

</ul>

</li>{/dede:channelartlist}

</ul>

上面的是输出到三级栏目,如果需要四级栏目可以这样写

<!-- 三级/四级 -->[field:id runphp=yes]global $dsql;$sql = "Select id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath FROM `SzsFox_arctype` WHERE reid=@me And ishidden<>1 order by sortrank asc limit 0,10";$dsql->SetQuery($sql);$dsql->Execute('t');$result = '';while($row = $dsql->GetArray('t')){

    $row['typeurl'] = GetOneTypeUrlA($row);

$result .= "<a href='{$row[typeurl]}'>{$row[typename]}</a>";

//四级

$nsql = "Select id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath FROM `SzsFox_arctype` WHERE reid=$row[id] And ishidden<>1 order by sortrank asc limit 0,10";

$dsql->SetQuery($nsql);

$dsql->Execute('n');

while($nrow = $dsql->GetArray('n'))

{

$nrow['typeurl'] = GetOneTypeUrlA($nrow);

$result .= "<a href='{$nrow[typeurl]}'>{$nrow[typename]}</a>";

}}@me = $result;[/field:id]

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

热门产品

历史上的今天:03月29日

热门专题

大理科技管理学校|大理科技管理中等职业技术学校,大理市科技管理中等职业技术学校
大理科技管理学校
安徽中源管业|安徽中源管业,安徽中源管业mpp电力管,安徽中源管业cpvc电力管,安徽中源管业pe穿线管,安徽中源管业电力管,安徽中源管业排水管,安徽中源管业通信管,安徽中源管业管材
安徽中源管业
云南巨榕教育投资集团有限公司|云南巨榕教育投资集团有限公司,巨榕教育集团,巨榕教育
云南巨榕教育投资集团有限公司
云南综合高中|云南综合高中
云南综合高中
自考本科|自考本科有用吗,自考文凭,自考本科文凭,自考文凭有用吗,自考本科文凭有用吗,自考文凭承认吗
自考本科
易捷尔高职单招|易捷尔高职单招,易捷尔高职单招培训,单招分数线,单招录取分数线,高职单招学校分数线
易捷尔高职单招
小程序开发|微信小程序,小程序开发,小程序,小程序制作,微信小程序开发,小程序公司,小程序开发公司,分销,三级分销系统,分销系统
小程序开发
云南开放大学|云南开放大学报名,云南开放大学报考,云南开放大学,什么是云南开放大学,云南开放大学学历,云南开放大学学费,云南开放大学报名条件,云南开放大学报名时间,云南开放大学学历,云南开放大学专业
云南开放大学

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部