dedecms列表页内容页栏目高亮和当前栏目调用二三级栏目
2023/03/11 12:26 魔司收录网 已浏览154次
在处理企业站的时候,经常发现要调用二三级栏目栏目,且需要高亮显示,具体实现方法如下。
1、打开 \include\taglib\channelartlist.lib.php 找到
1 |
$tpsql = " reid='$typeid' AND ispart<>2 AND ishidden<>1 " ; |
|
改成
3 |
$typeid = ( !empty($refObj->TypeLink->TypeInfos[ 'id' ]) ? GetTopid($refObj->TypeLink->TypeInfos[ 'id' ]) : 0 ); |
4 |
$tpsql = " reid='$typeid' AND ishidden<>1 " ; |
8 |
$tpsql = " reid='$typeid' AND ispart<>2 AND ishidden<>1 " ; |
|
2、打开 \include\taglib\channel.lib.php 找到
1 |
if ($ type == 'son' && $reid!=0 && $totalRow==0 |
|
改成
1 |
if ($ type == 'son' && $reid!=0 && $totalRow==0 && $noself== '' ) |
|
3、后台-系统-其它选项 模板引擎禁用标签 去掉php
调用代码如下:
03 |
$GLOBALS[ 'thisid' ] = intval($refObj->Fields[ 'typeid' ]); |
04 |
$GLOBALS[ 'reid' ] = intval($refObj->Fields[ 'reid' ]); |
05 |
$GLOBALS[ 'topid' ] = intval($refObj->Fields[ 'topid' ]); |
07 |
{dede:channelartlist type =son} |
08 |
<li{dede:field.typeid runphp= yes }(@me==$GLOBALS[ 'thisid' ]||@me==$GLOBALS[ 'reid' ]||@me==$GLOBALS[ 'topid' ])? @me= ' class="current"' :@me= '' ;{/dede:field.typeid}><a href= '{dede:field.typeurl/}' >{dede:field.typename/}</a></li> |
10 |
{dede:channel type =son noself= yes } |
11 |
<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> |
14 |
{/dede:channelartlist} |
|
至此,全部完成。