当前位置: SEO优化 > 织梦dedecms > 织梦标签/二开 > 正文
织梦标签/二开 织梦标签/二开 关注:3 内容:15

织梦获取当前栏目id并判断当前导航栏目高亮显示

  • 查看作者
  • 打赏作者
    • 大版主

      网站导航高亮显示这一微小的设置就是很好的用户体验,直接告诉用户你当前浏览的页面是哪个栏目;

      那么织梦CMS建站很好的解决了这个当前导航栏目高亮显示问题,今天分享几个当前栏目id并判断当前导航栏目高亮显示用法;

      判断当前栏目是否是首页高亮显示代码标签:

      <li>
      <a href=”{dede:global.cfg_basehost/}” {dede:field name=typeid runphp=”yes”}(@me==””)? @me=” class=’menu-top-active'”:@me=””;{/dede:field}>
      首页</a>
      </li>

      判断当前栏目显示高亮显示代码标签:

      {dede:channel type=’self’ row=’8′ currentstyle=”<li class=”cur”><a href=~typelink~>~typename~</a></li>”}
      
      <li><a href='[field:typelink/]’>[field:typename/]</a></li>
      
      {/dede:channel}

      如果是选中某栏目后显示代码样式:

      <li class=”cur” ><a href=’高亮的栏目链接’>高亮的栏目名称</a></li>

      今天主要分享的是如果手写指定单独栏目的时候,不适用了:类似

      {dede:type  typeid=‘1′}<li><a href=”[field:typeurl/]” title=”[field:typename /]” >[field:typename /]</a></li>{/dede:type}
      {dede:type  typeid=‘2′}<li><a href=”[field:typeurl/]” title=”[field:typename /]” >[field:typename /]</a></li>{/dede:type}
      {dede:type  typeid=‘2′}<li><a href=”[field:typeurl/]” title=”[field:typename /]” >[field:typename /]</a></li>{/dede:type}
      {dede:type  typeid=‘2′}<li><a href=”[field:typeurl/]” title=”[field:typename /]” >[field:typename /]</a></li>{/dede:type}

      我们可以参考织梦导航栏目高亮代码如下:

       {dede:field name=’typeid’ runphp=’yes’} if(@me==8) @me=’1′; else @me=’0′; {/dede:field}

       导航的写法,

      <li id=”{dede:type typeid=’4′}[field:ID /]{/dede:type}”{dede:field name=’typeid’ runphp=’yes’} if(@me==4) @me=’class=”cur”‘; else @me=”; {/dede:field}>{dede:type typeid = ‘4’ }<a href=”[field:typeurl/]” title=”[field:typename /]” >[field:typename /]</a>{/dede:type}</li>
      <li id=”{dede:type typeid=’1′}[field:ID /]{/dede:type}”{dede:field name=’typeid’ runphp=’yes’} if(@me==1) @me=’class=”cur”‘; else @me=”; {/dede:field}>{dede:type typeid = ‘1’ }<a href=”[field:typeurl/]” title=”[field:typename /]” >[field:typename /]</a>{/dede:type}</li>
      <li id=”{dede:type typeid=’7}[field:ID /]{/dede:type}”{dede:field name=’typeid’ runphp=’yes’} if(@me==7) @me=’class=”cur”‘; else @me=”; {/dede:field}>{dede:type typeid = ‘7’ }<a href=”[field:typeurl/]” title=”[field:typename /]” >[field:typename /]</a>{/dede:type}</li>
      <li id=”{dede:type typeid=’6′}[field:ID /]{/dede:type}”{dede:field name=’typeid’ runphp=’yes’} if(@me==6) @me=’class=”cur”‘; else @me=”; {/dede:field}>{dede:type typeid = ‘6’ }<a href=”[field:typeurl/]” title=”[field:typename /]” >[field:typename /]</a>{/dede:type}</li>
      <li id=”{dede:type typeid=’8′}[field:ID /]{/dede:type}”{dede:field name=’typeid’ runphp=’yes’} if(@me==8) @me=’class=”cur”‘; else @me=”; {/dede:field}>{dede:type typeid = ‘8’ }<a href=”[field:typeurl/]” title=”[field:typename /]” >[field:typename /]</a>{/dede:type}</li>

      完美解决了不是循环读取栏目高亮显示的问题;

      arclist标签内容页当前文档高亮效果显示的问题:

      有的时候点击内容页时,左侧或者右侧调用的是同个文档时,显示当前文档高亮显示或者样式;

      <ul>
      {dede:arclist titlelen=42 row=20} 
      <li[field:id runphp=yes]global $id,$aid;$aid = isset($id) ? $id : $aid;if(@me == $aid)@me = ‘ class=”cur“‘;else @me = ”;[/field:id]> 
      <a href=“[field:arcurl/]”>[field:title/]</a> 
      </li> {/dede:arclist}
      </ul>

      上面那一行标签的意思是:用 当前文档id 作为判断

      如果在 dede:arclist标签里有文档的id 等于 当前文档id 就给它加 class=”cur”

      参数说明:typeid = ‘1’ 是网站栏目管理ID

      class=”cur”是高亮类样式

    • 管理后台
    • 帖子间隔 侧栏位置: