之前我們經(jīng)常會碰到使用 【channelartlist標(biāo)簽支持currentstyle高亮屬性】,是針對二級欄目有效,當(dāng)我們碰到三級欄目時候是失效的,今天秀站網(wǎng)技術(shù)就碰到這樣的問題,經(jīng)過調(diào)試后,終于研究出來了。
實現(xiàn)效果如圖:
1:修改文件.include\taglib\channelartlist.lib.php
找到:
$pv->Fields['typeurl'] = GetOneTypeUrlA($typeids[$i]); |
下面增加下面這句:
if($typeids[$i]['id'] == $refObj->TypeLink->TypeInfos['id'] || $typeids[$i]['id'] == $refObj->TypeLink->TypeInfos['topid'] //如果循環(huán)到的id為正在打開的欄目的祖父(最頂級)欄目,則循環(huán)到的祖父id也要高亮 ||$typeids[$i]['id']==$refObj->TypeLink->TypeInfos['reid'] //根據(jù)現(xiàn)在訪問的欄目id的父欄目,即 $refObj->TypeLink->TypeInfos['reid'] ,如果reid等于本次循環(huán)得到的id ,則本次循環(huán)得到的欄目高亮 ){ $pv->Fields['active'] = $active ? $active : 'active'; }else{ $pv->Fields['active'] = ''; } |
模板上如何使用:
{dede:channelartlist typeid='32' row='12' currentstyle='active'} <li class="{dede:field.active/}"><a href='{dede:field name="typeurl"/}'>{dede:field name="typename"/}</a> </li> {dede:channel type='sun' row='50'} <a href="[field:typelink/]">[field:typename/]</a> {/dede:channel} {/dede:channelartlist} |
以上就介紹了織夢dedecms三級導(dǎo)航欄目高亮dede:channelartlist支持currentstyle。