织梦多级菜单时当前栏目高亮及首页高亮代码

我们在浏览网站时,当前在哪个栏目,那个栏目菜单背景就高亮,首页也可以实现。

首页高亮代码判断

正常时候我们首页一般是这样的。

 <li><a href="/" target="_blank">首页</a></li>

显示效果

在A标签里面加上下面代码即可

{dede:field name=typeid runphp=yes}(@me=='')? @me=' class="current"':@me='';{/dede:field}

加完后的代码如下:

<li><a href="/" {dede:field name=typeid runphp=yes}(@me=='')? @me=' class="current"':@me='';{/dede:field} target="_blank">首页</a></li>

当打开首页时,它会自动给首页加上背景色,当然可以自定样式,比如加大字体,加上边框,字体变色等,显示效果,current是你的样式名称。

最终效果:

织梦channelartlist多级栏目高亮

织梦多级菜单的高亮代码,在A标签里面加入下面代码即可

class="{dede:field.currentstyle/}"

参考代码:

<ul class="level0">
          <li><a href="/" {dede:field name=typeid runphp=yes}(@me=='')? @me=' class="current"':@me='';{/dede:field} target="_blank">首页</a></li>
          {dede:channelartlist typeid=top row=10 currentstyle='current'}
          <li class="imyeah"><a class="{dede:field.currentstyle/}" href="{dede:field name="typeurl"/}" target="_blank" title="{dede:field name="typename"/}">{dede:field name="typename"/}</a>
			  {dede:channel type='son' noself='yes'}
			  <ul class="level1">
			      <li><a href="[field:typeurl/]" title="[field:typename/]" target="_blank">[field:typename/]</a></li>
			  </ul>
			  {/dede:channel}</li>
          {/dede:channelartlist}
        </ul>

 

这样,当打开某个栏目时,当前栏目的菜单会自动高亮,就是下面有子菜单时,当前的顶级菜单也是高亮。

 

如果你只有一级栏目,没有二级栏目,那么就用下面高亮代码:

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

 

根据自己的需要修改删减。

更多织梦标签代码,请查看

织梦DedeCms仿站常用模板标签大全

 

我这是使用的织梦是优化精简过的程序,如果你发现添加代码的不起作用。请尝试按下面方法修改代码,如果发现代码一样,就不用修改。

打开 /include/taglib/channelartlist.lib.php 找到

$pv->Fields['typeurl'] = GetOneTypeUrlA($typeids[$i]);

大约在93行,在它下面添加

if($typeids[$i]['id'] == $refObj->TypeLink->TypeInfos['id'] || $typeids[$i]['id'] == $refObj->TypeLink->TypeInfos['reid'] || $typeids[$i]['id'] == $refObj->TypeLink->TypeInfos['topid'] || $typeids[$i]['id'] == GetTopid($refObj->TypeLink->TypeInfos['id']) )
{
	$pv->Fields['currentstyle'] = $currentstyle ? $currentstyle : 'current';
}
else
{
	$pv->Fields['currentstyle'] = '';
}

 

实测有效。

 

 

 

THE END