织梦DEDECMS调用导航栏的顶级栏目、二级栏目及三级栏目

织梦调用导航菜单栏目,随着javascript的运用,导航栏的子栏目越来越多,在dedecms如何实现这些栏目的调用呢?

  1. 一般导航栏目的调用,该类栏目只有主栏目,没有子栏目,这类栏目一般适用于企业网站和个人网站。其样式图如下:

 

  该类栏目的dedecms调用方法比较简单,如下:

{dede:channel type='top' currentstyle="
<li class='thisclass'><a href='~typelink~'>~typename~</a> 
</li>"} 
<li><a href='[field:typeurl/]'>[field:typename/]</a></li>
{/dede:channel}

注释(参数): typeid='0' 栏目ID; reid = '0' 上级栏目ID; row = '100' 调用栏目数;col = '1' 分多少列显示

(默认为单列);type = 'son | sun' son表示下级栏目,self表示同级栏目,top顶级栏目; currentstyle = '' 应用样式"。

  这种方法会把后台的顶级栏目都调用出来,如果想有些栏目不被调用出来,可以加上参数typeid=‘所要调用栏目的

id’。对于调用指定的栏目可以用下面的标签:

{dede:type typeid=‘指定栏目的id’}
<a href="[field:typelink /]">[field:typename /]</a>
{/dede:type}

2. 带有二级子栏目的栏目的调用,这类网站用于信息分类比较多的网站,其样式图如下:

 

  这种栏目是比较常见的,其dedecms调用代码如下:

{dede:channelartlist typeid='1,2,3,6,7,10,8,11' row='10'}    //typeid=‘顶级栏目的id’   
<li class="tab dropdown"><a  id="{dede:field name='id'/}"  
href="{dede:field name='typeurl'/}" class="tablink arwlink">
{dede:field name='typename'/}</a>   
<ul class="subnav">      
{dede:channel type='son' noself='yes'}     
<a href="[field:typelink/]">[field:typename/]</a>  
{/dede:channel}   
</ul>   
</li>     
{/dede:channelartlist}

 

对于没有子栏目的顶级栏目可以使用调用指定栏目的标签:

 

{dede:type typeid=‘指定栏目的id’}
<li>
<a href="[field:typelink /]">[field:typename /]</a>
</li>
{/dede:type}

 

 

这样可以实现上述栏目的调用。

  3.有三级子栏目的调用代码,这类导航适用于商城等,其样式图如下:

  对于这种栏目的调用代码如下:

 

<li>
<h3>
{dede:type typeid='2'}<a href='[field:typelink/]' class="depth_1">
[field:typename/]</a>{/dede:type}
</h3>  //顶级栏目的调用                  
<ul class="children" style="display: none; "> {dede:channelartlist typeid='top'  typeid='2'}  
 //二级栏目和三级栏目的调用这里typeid='子栏目所属的顶级栏目的id'                    
<li>
<h3 >
<a href='{dede:field name='typeurl'/}' class="depth_2">
<span class="icon10"></span>{dede:field name='typename'/}
</a>
</h3>                                
<ul>                                 
{dede:sql sql='Select * from dede_arctype where reid=~id~  ORDER BY id limit 0,20'}
  //limit 起始三级栏目id  显示栏目的条数                                 
<li><a href="[field:typedir function='str_replace("{cmspath}","",@me)'/]"  
class="depth_3">[field:typename/]</a>
</li>                                 
{/dede:sql}                                 
</ul>                   
 </li>                   
{/dede:channelartlist}                   
</ul>           
</li>

 这三类基本上包括了导航栏的调用方式,而且都经过测试可以放心使用。

 

 

 

 

 

 

 

 

 

 

原文地址:https://www.cnblogs.com/qianjilou/p/9536406.html