织梦dedecms让channelartlist标签里的channel支持currentstyle当前栏目高亮
织梦dedecms让channelartlist标签里的channel支持currentstyle当前栏目高亮
打开 /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'] = '';
}
织梦标签channelartlist默认是不支持多层嵌套后使用currentstyle高亮,修改一个文件可以实现,模板里调用代码:里面的hover
就是你的高亮样式,
<div class="nav">
<ul>
{dede:channelartlist row=7 typeid=top currentstyle=hover}
<li class="{dede:field.currentstyle/}">
<a href="{dede:field.typeurl/}">{dede:field.typename/}</a>
<ul>
{dede:channel type='son' noself='yes' row='10' currentstyle="<li class='hover'><a href='~typelink~'>~typename~</a></li>"}
<li><a href="[field:typeurl/]">[field:typename/]</a></li>
{/dede:channel}
</ul>
</li>
{/dede:channelartlist}
</ul>
</div>
打开 \include\taglib\channel.lib.php
搜索
global $dsql;
修改成:
global $dsql,$_sys_globals;
继续搜索
$row['id']==$typeid
修改成:
$row['id']==$typeid || $row['id']==$_sys_globals['typeid']
声明:
1.本站主要是为了记录工作、学习中遇到的问题,可能由于本人技术有限,内容难免有纰漏,一切内容仅供参考。
2.本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!
3.本站所有原创作品,包括文字、资料、图片、网页格式,转载时请标注作者与来源。
1.本站主要是为了记录工作、学习中遇到的问题,可能由于本人技术有限,内容难免有纰漏,一切内容仅供参考。
2.本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!
3.本站所有原创作品,包括文字、资料、图片、网页格式,转载时请标注作者与来源。
THE END