|
dedecms默认模板的channelartlist是不支持currentstyle属性的。currentstyle属性在导航中应用的比较多,可以实现循环调用栏目后,当前页
标签获得一个class="自定义命名"的属性,具体作用就不做说明了,需要修改文件。
打开:include\taglib\channelartlist.lib.php
找到:
$pv->Fields['typeurl', = GetOneTypeUrlA($typeids[$i,);
在此行代码下方增加以下代码:
//让channelarclist支持currentstyle属性
if($typeids[$i,['id', == $refObj->TypeLink->TypeInfos['id', || $typeids[$i,['id', == $refObj->TypeLink->TypeInfos['topid', ){
$pv->Fields['currentstyle', = $currentstyle ? $currentstyle : 'nLi on';
}
else{
$pv->Fields['currentstyle', = 'nLi';
}
//让channelarclist支持currentstyle属性end
网上找到的一般没有加$typeids[$i,['id', ==$refObj->TypeLink->TypeInfos['topid',
添加这个后才能对二级栏目也起作用。
调用方法:
{dede:channelartlist typeid='2' currentstyle='current'}
[url={dede:field name=,{dede:field name='typename'/}[/url]
。。。
{/dede:channelartlist}
如果是当前栏目则 li的class属性显示current,否则显示class='' ,也可以修改currentstyle='这里改为你需要的类名'。
导航用channelartlist调用子栏目方法 |
|