首页 > CMS > 织梦DEDE > 正文

织梦channelartlist高亮并且让嵌套标签里的channel也支持currentstyle高亮

2024-07-12 08:28:23
字体:
来源:转载
供稿:网友
摘要:dede:channelartlist嵌套dede:channel,如果想要channel也能使用currentstyle,那需要修改2步就能轻松实现二级高亮。

dede:channelartlist栏目高亮实现教程

打开 /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['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'] = '';}

然后 dede:channelartlist 标签里是高亮标签调用是

{dede:field.currentstyle/}

例如下面的写法

嵌套标签

<div class="nav">    <ul>        {dede:channelartlist row=7 typeid=top currentstyle=current}        <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>

channelartlist嵌套channel标签也高亮实现教程

打开 /include/taglib/channel.lib.php 找到

global $dsql;

改成

global $dsql,$_sys_globals;

继续找到

$row['id']==$typeid

改成

$row['id']==$typeid || $row['id']==$_sys_globals['typeid']

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表