注册 | 登录 |
地方论坛门户及新闻和人才网址大全

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

时间:2021-07-21人气:-


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

1、打开 includetaglibchannelartlist.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、打开 includetaglibchannel.lib.php 找到

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

改成

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

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

调用代码如下:

<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']||@me==$GLOBALS['reid']||@me==$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>

至此,全部完成。


上篇:dedecms 上一篇和下一篇调用链接的正则写法

下篇:dedecms织梦联动地区后台显示为数字的真正解决方法