首页  »  站长资讯  »  网站优化

dedecms列表页内容页栏目高亮和当前栏目调用二三级栏目

2023/03/11 12:26     创新屋收录网     已浏览366次


在处理企业站的时候,经常发现要调用二三级栏目栏目,且需要高亮显示,具体实现方法如下。

1、打开 includetaglibchannelartlist.lib.php 找到





















1

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






改成




















1

if($type=='son')











2

{











3

    $typeid = ( !empty($refObj->TypeLink->TypeInfos['id']) ?  GetTopid($refObj->TypeLink->TypeInfos['id']) : 0 );











4

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











5

}











6

else











7

{











8

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











9

}






2、打开 includetaglibchannel.lib.php 找到




















1

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






改成




















1

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







3、后台-系统-其它选项 模板引擎禁用标签 去掉php

调用代码如下





















01












02

{dede:php}











03

$GLOBALS['thisid'] = intval($refObj->Fields['typeid']);











04

$GLOBALS['reid'] = intval($refObj->Fields['reid']);











05

$GLOBALS['topid'] = intval($refObj->Fields['topid']);











06

{/dede:php}











07

{dede:channelartlist type=son}











08

    yes}(@me==$GLOBALS['thisid']||@me==$GLOBALS['reid']||@me==$GLOBALS['topid'])? @me=' class="current"':@me='';{/dede:field.typeid}>'{dede:field.typeurl/}' >{dede:field.typename/}











09

    











10

    {dede:channel type=son noself=yes}











11

    id runphp=yes](@me==$GLOBALS['thisid'])? @me=' class="current2"':@me='';[/field:id]>'[field:typelink /]' title='[field:typename/]'>[field:typename/]











12

    {/dede:channel}











13

    











14

{/dede:channelartlist}











15







至此,全部完成。