当前位置 : 主页 > 建站教程 > dedecms >

dede织梦内容页列表页二级栏目三级栏目同时高亮方法

来源:互联网 收集:自由互联 发布时间:2022-05-01
效果演示: 实现教程 1、打开\include\taglib\channelartlist.lib.php找到 $tpsql=reid=$typeidANDispart2ANDishidden1; 改成 if($type==son){ $typeid = ( !empty($refObj-TypeLink-TypeInfos[id]) ? GetTopid($refObj-TypeLink-TypeInfos[i
效果演示:

dede织梦内容页列表页二级栏目三级栏目同时高亮方法

 

实现教程

 

1、打开 \include\taglib\channelartlist.lib.php 找到

  $tpsql = " reid='$typeid' AND ispart<>2 AND ishidden<>1 ";

改成

if($type=='son')
{
         $typeid = ( !empty($refObj->TypeLink->TypeInfos['id']) ?  GetTopid($refObj->TypeLink->TypeInfos['id']) : 0 );
         $tpsql = " reid='$typeid' AND ishidden<>1 ";
}
else
{
         $tpsql = " reid='$typeid' AND ispart<>2 AND ishidden<>1 ";
}

2、打开 \include\taglib\channel.lib.php 找到

  if($type=='son' && $reid!=0 && $totalRow==0)


改成

  if($type=='son' && $reid!=0 && $totalRow==0 && $noself=='')

3、后台-系统-其它选项 去掉php

dede织梦内容页列表页二级栏目三级栏目同时高亮方法

列表页和内容页标签写法

<ul>
{dede:php}
$GLOBALS['thisid'] = intval($refObj->Fields['typeid']);
$GLOBALS['reid'] = intval($refObj->Fields['reid']);
$GLOBALS['topid'] = intval($refObj->Fields['topid']);
{/dede:php}
{dede:channelartlist type=son}
    <li{dede:field.typeid runphp=yes}(@me==$GLOBALS['thisid'][email protected]==$GLOBALS['reid'][email protected]==$GLOBALS['topid'])? @me=' class="current"':@me='';{/dede:field.typeid}><a href='{dede:field.typeurl/}' >{dede:field.typename/}</a></li>
    <ul>
    {dede:channel type=son noself=yes}
    <li[field:id runphp=yes](@me==$GLOBALS['thisid'])? @me=' class="current2"':@me='';[/field:id]><a href='[field:typelink /]' title='[field:typename/]'>[field:typename/]</a></li>
    {/dede:channel}
    </ul>
{/dede:channelartlist}
</ul>

注意:红色的地方是必须要的

上一篇:修改channel.lib.php实现DedeCMS多级栏目嵌套
下一篇:没有了
网友评论
相关栏目