Salad UN

To Taste The Salad Of Life.

« DedeCmsV5.1函数及文件参考手册DedeCMS模板Arclist 标签使用实例 »

DedeCMS增加父栏目调用

[ At 2008-12-1 By Ash   0 comments ]

DedeCMS增加父栏目调用,以及多级支持currentstyle,来源于DedeCMS论坛,迟早会用的上,先贴着备份。

\include\inc_typelink.php
1、在这段代码后(大概263行)
if($reID==0 && $typeid>0){
$dbrow = $this->dsql->GetOne("Select reID From #@__arctype where ID='$typeid' ");
if(is_array($dbrow)) $reID = $dbrow['reID'];
}

增加
// 新增代码
if($reID>0){
$dbrow = $this->dsql->GetOne("Select reID From #@__arctype where ID='$reID'");
if(is_array($dbrow)) $parentID = $dbrow['reID'];
}
// 新增代码结束结束


2、然后在以下代码后:
else if($typetype=="self"){
$sql = "Select ID,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl From #@__arctype where reID='$reID' And ishidden<>1 order by sortrank asc limit 0,$row";
}

增加
else if($typetype=="parent"){    //新增代码 获得上级栏目
$sql = "Select ID,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl From #@__arctype where reID='$parentID' And ishidden<>1 order by sortrank asc limit 0,$row";
}
//新增代码结束 获得上级栏目


3、修改下面一句代码
if($row['ID']=="$typeid" && $myinnertext != ''){
修改为:
if(($row['ID']=="$typeid" || $row['ID']=="$reID" || $row['ID']=="$parentID") && $myinnertext != ''){



经过3个步骤的修改
可以实现2个功能:
1、调用父级栏目(上级),对于栏目分级太深的很有用
方法:
{dede:channel type='parent'}{dede:channel}
2、可以调用currentstyle,对于栏目分级太深,还想改变当前栏目样式的很有用!


希望对大家有所帮助!
 

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

日历

最新评论及回复

最近发表

Powered By Z-Blog 1.8 Spirit Build 80722 Code detection by Codefense

Copyright 2008 www.s-un.cn. Some Rights Reserved.