主页 > 网站建设 > 建站知识 > 织梦导航栏的调用方法之顶级栏目、二级栏目及

织梦导航栏的调用方法之顶级栏目、二级栏目及

POST TIME:2020-04-22 22:57

在用制作织梦模板时,导航栏的制作是一个重点,也是基础,下面来说一下织梦顶级栏目、二级栏目、三级栏目的调用方法。

1、顶级栏目调用
最简单的导航栏目调用,至调用主栏目,没有子栏目,这类栏目一般适用于企业网站和个人网站。其样式图如下:

  该类栏目的dedecms调用方法比较简单,如下:
{dede:channeltype='top'currentstyle="<liclass='thisclass'><ahref='~typelink~'>~typename~</a></li>"}
<li><ahref='[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:typetypeid=‘指定栏目的id’}<ahref="[field:typelink/]">[field:typename/]</a>{/dede:type}
  
2、带有二级子栏目的栏目的调用,这类网站用于信息分类比较多的网站,其样式图如下:

  这种栏目是比较常见的,其dedecms调用代码如下:
{dede:channelartlisttypeid='1,2,3,6,7,10,8,11'row='10'}//typeid=‘顶级栏目的id’

<liclass="tabdropdown"><aid="{dede:fieldname='id'/}"href="{dede:fieldname='typeurl'/}"class="tablinkarwlink">{dede:fieldname='typename'/}</a>

<ulclass="subnav">

{dede:channeltype='son'noself='yes'}

<ahref="[field:typelink/]">[field:typename/]</a>
{/dede:channel}
</ul>
</li>
{/dede:channelartlist}
  对于没有子栏目的顶级栏目可以使用调用指定栏目的标签:
{dede:typetypeid=‘指定栏目的id’}<li><ahref="[field:typelink/]">[field:typename/]</a></li>{/dede:type}
  这样可以实现上述栏目的调用。
  
3、有三级子栏目的调用代码,这类导航适用于商城等,其样式图如下:

  对于这种栏目的调用代码如下:
<li><h3>
{dede:typetypeid='2'}
<ahref='[field:typelink/]'class="depth_1">[field:typename/]</a>{/dede:type}</h3>//顶级栏目的调用
<ulclass="children"style="display:none;">
{dede:channelartlisttypeid='top'typeid='2'}//二级栏目和三级栏目的调用这里typeid='子栏目所属的顶级栏目的id'
<li><h3><ahref='{dede:fieldname='typeurl'/}'class="depth_2"><spanclass="icon10"></span>{dede:fieldname='typename'/}</a></h3><ul>
{dede:sqlsql='Select*fromdede_arctypewherereid=~id~ORDERBYidlimit0,20'}//limit起始三级栏目id显示栏目的条数
<li><ahref="[field:typedirfunction='str_replace("{cmspath}","",@me)'/]"class="depth_3">[field:typename/]</a></li>
{/dede:sql}
</ul>
</li>
{/dede:channelartlist}
</ul>
</li>


收缩
  • 微信客服
  • 微信二维码
  • 电话咨询

  • 400-1100-266