织梦cms当前栏目调用子栏目内容

织梦CMS当前栏目调用子栏目内容的方法

在当前栏目页面中展示其子栏目的内容(文章或封面内容),常用的标签组合是channel+arclist嵌套使用。

一、使用channel+arclist嵌套

{dede:channel type='son'}
<div>
<h3><a href="[field:typelink/]">[field:typename/]</a></h3>
{dede:arclist typeid='[field:id/]' row='5'}
<li><a href="[field:arcurl/]">[field:title/]</a></li>
{/dede:arclist}
</div>
{/dede:channel}

二、使用channelartlist

{dede:channelartlist}
<div>
<h3>{dede:field name='typename'/}</h3>
{dede:arclist row='5'}<li>[field:title/]</li>{/dede:arclist}
</div>
{/dede:channelartlist}

channelartlist在列表页使用时自动遍历当前栏目的子栏目。

三、用SQL获取子栏目及其内容

{dede:php}
$typeid=$refObj->TypeLink->TypeInfos['id'];
$sql="SELECT id,typename FROM dede_arctype WHERE reid=$typeid";
$dsql->Execute('sub',$sql);
while($row=$dsql->GetArray('sub')){
echo '<h3>'.$row['typename'].'</h3>';
$dsql->SetQuery("SELECT id,title FROM dede_archives WHERE typeid=".$row['id']." LIMIT 5");
$dsql->Execute('arc');
while($arc=$dsql->GetArray('arc')){echo '<li>'.$arc['title'].'</li>';}
}
{/dede:php}
提示:channelartlist是封装好的解决方案,一行标签即可遍历子栏目并获取文章,代码最简洁。