完美解决织梦channelartlist标签不支持currentstyle属性

本文介绍了如何在PHP代码中为频道艺术列表添加条件判断,确保当前栏目和指定类型关联时动态设置li元素的class属性。通过`currentstyle`字段控制样式,适用于二级栏目。阅读以了解如何使用dede标签调用此功能并展示不同样式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

打开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'] ){ 

             $pv->Fields['currentstyle'] = $currentstyle ? $currentstyle : 'current'; 

         } 

         else{ 

             $pv->Fields['currentstyle'] = ''; 

         }

 

网上找到的一般没有加$typeids[$i]['id'] ==$refObj->TypeLink->TypeInfos['topid']
添加这个后才能对二级栏目也起作用
调用方法:

 

{dede:channelartlist typeid='2' currentstyle='current'} 

 <li class='{dede:field.currentstyle/}'><a href='{dede:field name='typeurl'/}'>

{dede:field name='typename'/}</a></li> 


 {/dede:channelartlist}

 

如果是当前栏目则 li的class属性显示current,否则显示class='' ,也可以修改currentstyle='这里改为你需要的类名'。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值