DedeCMS栏目列表调用中currentstyle中也支持autoindex的方法

在《DedeCMS自增函数autoindex/itemindex用法全解析》中,余斗给大家详细说明了DedeCMS中的autoindex和itemindex的日常用法,而我们在DedeCMS建站过程中,调用顶级栏目之类的会用到currentstyle属性,来实现当前栏目的高亮显示,而如果栏目列表的样式名呈递增的时候,就不能直接在currentstyle中加autoindex或itemindex了,这个时候需要我们修改下底层文件来实现,具体方法如下:

一、打开include/taglib/channel.lib.php中搜索(大概在第140行):

$linkOkstr = str_replace(
“~typename~”,$row[
‘typename’],$linkOkstr);

 

二、在下方加入代码:

$linkOkstr = str_replace(
“~autoindex~”,$GLOBALS[
‘autoindex’]+
1,$linkOkstr);

 

修改前

修改后

释义:这里是加一递增,如果是其他递增形式,改对应数字即可。

三、调用方法:

{dede:channel type=
‘top’ row=
‘8’ currentstyle=
“<li class=’on’><a class=’box~autoindex~’ href=’~typelink~’>~typename~</a></li>”}

<li><a
class=
‘box[field:global name=autoindex runphp=”yes”]@me=@me+1;[/field:global]’ href=
‘[field:typelink/]’>[field:
typename/]</a></li>

{/dede:channel}