dede织梦文章高亮栏目高亮

arclist标签内容页当前文档高亮效果展示

最简单的实现方法,不改动程序文件
在这里插入图片描述
[field:id runphp=yes]global $id,$aid;$aid = isset($id) ? $id : $aid;if(@me == $aid)@me = ' class="current"';else @me = '';[/field:id]

上面那一行标签的意思是:用 当前文档id 作为判断
如果在 dede:arclist标签里有文档的id 等于 当前文档id 就给它加 class=“current”

例子

<ul>
	{dede:arclist titlelen=42 row=20}
	<li[field:id runphp=yes]global $id,$aid;$aid = isset($id) ? $id : $aid;if(@me == $aid)@me = ' class="current"';else @me = '';[/field:id]>
		<a href="[field:arcurl/]">[field:title/]</a>
	</li>
	{/dede:arclist}
</ul>

channel标签当前栏目高亮

    {dede:channel type='top' currentstyle="<li class='on'><a href='~typelink~' title='~typename~'>~typename~</a></li>"}
 <li><a href='[field:typelink /]' title='[field:typename/]'>[field:typename/]</a> </li> 
    {/dede:channel}   

使channelartlist标签支持currentstyle方法

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

前端页面代码调用如下:

{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=‘这里改为你需要的类名’。


栏目及其当前文章高亮

{dede:channelartlist typeid='19' currentstyle='on'}
      <div class='{dede:field.currentstyle/}'><p>{dede:field name='typename'/}</p>
               <ul>
              {dede:arclist titlelen="50" row='5'}
                <li[field:id runphp=yes]global $id,$aid;$aid = isset($id) ? $id : $aid;if(@me == $aid)@me = ' class="on"';else @me = '';[/field:id]>
                  <a href="[field:arcurl /]">[field:title /]</a>
                  </li>
                 {/dede:arclist}
               </ul>
      </div>
{/dede:channelartlist}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值