DedeCMS当前栏目高亮(非顶级栏目高亮)的实现方法
织梦默认导航标签没有给当前栏目判断加高亮的设置(currentstyle只支持顶级栏目高亮),如果要实现当前栏目高亮,这个方法是不适用的。
余斗给出大家解决方法如下:要实现此功能,需要首先进行设置:后台-系统-其它选项-模板引擎禁用标签-去掉php 。
在要实现调用的地方加上如下代码:
{dede:php}$GLOBALS[
‘thisid’] = intval($refObj->Fields[
‘id’]);{/dede:php}
<ul>
<li><a href=
“/” target=
“_blank” {dede:php}
if(!$GLOBALS[
‘thisid’]) echo
“class=’this'”; {/dede:php} ><span>HOME</span><br/>首 页</a></li>
{dede:channel type=
‘top’ row=
‘7’ }
<li><a href=
“[field:typeurl/]” [field:id runphp=
‘yes’]
if (@me == $GLOBALS[
‘thisid’] ) @me =
“class=’thisclass’ “ ;[/field:id] target=
“_blank” ><span>[field:alias/]</span><br/>[field:
typename/]</a></li>
{/dede:channel}
</ul>
以上是全部代码,下面进行说明:
{dede:php} $GLOBALS[
‘thisid’] = intval($refObj->Fields[
‘id’]); {/dede:php}
获取当前栏目ID。
[field:id runphp=
‘yes’]
if (@me == $GLOBALS[
‘thisid’] ) @me =
“class=’thisclass’ “ ;[/field:id]
对dede:channel标签运行PHP,如果ID相等,输出class=’thisclass’(此标签可根据具体情况自行变换) 。
实现的效果