织梦怎么调用顶级栏目以及下面的二级栏目

dede织梦调用顶级二级栏目及下三级栏目方法(数据库,dedecms如何调用顶级栏目和二级栏目分类显示,dede织梦调用顶级二级栏目及下三级栏目方法(数据库实现),织梦dedecms调用顶级栏目和二级栏目分类显示,下面小编来给大家介绍一下,一起来了解一下吧!

织梦调用顶级栏目以及下面的二级栏目
 
有些时候需要调用顶级栏目以及下面的二级栏目,例如再做下拉菜单时。最简单的调用二级栏目的办法:

 {dede:channelartlist typeid='top'}
 
 <li><a href="{dede:field name='typeurl'/}" target="_self">{dede:field name='typename'/}</a>
 
 <ul>
 
 {dede:channel type='son' noself='yes'}
 
 <li><a href="[field:typelink/]" target="_self">[field:typename/]</a></li>
 
 {/dede:channel}
 
 </ul>
 
 </li>
 
 {/dede:channelartlist}

有些时候需要做样式时,需要为dede:channelartlist 里的某个标签加上不同的css,例如下面的例子:

 {dede:channelartlist typeid='top'}
 
 <li><a href="{dede:field name='typeurl'/}" target="_self">{dede:field name='typename'/}</a>
 
 <ul class="flyout level2 child{dede:global name='itemindex'/}">
 
 {dede:channel type='son' noself='yes'}
 
 <li><a href="[field:typelink/]" target="_self">[field:typename/]</a></li>
 
 {/dede:channel}
 
 </ul>
 
 </li>
 
 {/dede:channelartlist}

{dede:global name=’itemindex’/}为在每次调用顶级栏目,自动递增。
 
更复杂的调用二级栏目的方式,要用dede:php标签,如下例:

 <ul>
 
 <li><a href="{dede:global.cfg_basehost/}">网站首页</a></li>
 
 {dede:channelartlist typeid='top'}
 
 {dede:php}
 
 $thisid = $refObj->Fields['id'];
 
 $dsql->SetQuery("Select * from `dede_arctype` where reid=".$thisid." ORDER BY sortrank");
 
 $dsql->Execute();
 
 $i=0;
 
 while($arr = $dsql->getArray()){
 
 $i = $i +1;
 
 $str = implode(',',$arr);
 
 if(!empty($str) && $i==1){
 
 echo '<li><div><dl><dt><img src="/img/item_top.jpg" width="89" height="11"></dt>';
 
 }
 
 echo '<dd><a href="/plus/list.php?tid='.$arr['id'].'">'.$arr['typename'].'</a></dd>';
 
 }
 
 if(!empty($str)) echo '</dl></div>';
 
 if(empty($str)){
 
 echo '<li>';
 
 }
 
 {/dede:php}
 
 <a href="{dede:field name='typeurl'/}" class='{dede:field.currentstyle/}'>{dede:field name='typename'/}</a>
 
 </li>
 
 {/dede:channelartlist}
 
 </ul>

这种方式虽然更复杂,但也更灵活。

更多教程关注FF推源码网。

提供最优质的资源集合

立即查看 了解详情