織夢(mèng)dedecms
欄目獲取無(wú)限子分類(lèi)的方法
時(shí)間: 2018-12-06 11:51
閱讀: 次
作者:素材無(wú)憂網(wǎng)
織夢(mèng)DEDECMS欄目獲取無(wú)限子分類(lèi)的方法 。
提示:首先要把/include/taglib/channerl.lib.php 文件的代碼修改成以下的:
for($i=0;$i < $line;$i++)
{
if($col>1) $likeType .= “<dl>\r\n”;
for($j=0;$j<$col;$j++)
{
if($col>1) $likeType .= “<dd>\r\n”;
if($row=$dsql2->GetArray())
{
$row['typelink'] = $row['typeurl'] = GetOneTypeUrlA($row);
if(is_array($dtp2->CTags))
{
foreach($dtp2->CTags as $tagid=>$ctag){
if(isset($row[$ctag->GetName()]))
{
$dtp2->Assign($tagid,$row[$ctag->GetName()]);
}
elseif (preg_match(‘/^sonchannel[0-9]*$/’,$ctag->GetName()))
{
$dtp2->Assign($tagid,lib_channel_son($ctag,$row['id'],$dsql3));
}
}
}
$likeType .= $dtp2->GetResult();
}
if($col>1) $likeType .= “</dd>\r\n”;
}//Loop Col
if($col>1)
{
$i += $col – 1;
$likeType .= ” </dl>\r\n”;
}
}//Loop for $i
reset($dsql3);
$dsql2->FreeResult();
return $likeType;
}
?>
在模板里面用 [field:sonchannel0] [/field:sonchannel0] 調(diào)用,這個(gè)是用來(lái)取子欄目用得(使用【sonchannel+數(shù)字】作為標(biāo)簽名是為了防止嵌套的時(shí)候無(wú)法正確解析標(biāo)簽),這個(gè)的作用就是當(dāng)你的欄目有很多子欄目無(wú)限分級(jí)的時(shí)候方便你取子欄目的。實(shí)例一下:
<ul id=”left_nav”>
{dede:channel type=’son’ typeid=’16′}
<li><a href=”[field:typelink/]“>[field:typename/]</a>
<ul>
[field:sonchannel0]
<li><a href=”[field:typelink/]“>[field:typename/]</a>
<ul>
[field:sonchannel1]
<li><a href=”[field:typelink/]“>[field:typename/]</a>
<ul>
[field:sonchannel2]
<li><a href=”[field:typelink/]“>[field:typename/]</a>
<ul>
[field:sonchannel3]
<li><a href=”[field:typelink/]“>[field:typename/]</a></li>
[/field:sonchannel3]
</ul>
</li>
[/field:sonchannel2]
</ul>
</li>
[/field:sonchannel1]
</ul>
</li>
[/field:sonchannel0]
</ul>
</li>
{/dede:channel}
</ul>
以上typeid中的數(shù)字改成你的大分類(lèi)的ID即可,因?yàn)樵贒EDE官方論壇沒(méi)找到,所以這里發(fā)上來(lái),希望能方便有用者。
注意:未免出錯(cuò)修改文件前請(qǐng)做好備份,以上代碼可能有些引號(hào)又被自動(dòng)轉(zhuǎn)成全角的了,請(qǐng)修改成半角的 。
標(biāo)簽: