织梦DEDECMS中增加父栏目调用,以及多级支持currentstyle的方法

点评 :在织梦DEDECMS中需要增加父栏目调用时以及多级支持currentstyle的时候如何实现呢.下面给大家看一下方法 因为本人需要,自己就动手修改了其中代码,拿来分享,能用到的朋友可以借鉴一下! \include\inc_typelink.php 1、在这段代码后(大概263行) if(
点评:在织梦DEDECMS中需要增加父栏目调用时以及多级支持currentstyle的时候如何实现呢.下面给大家看一下方法
 
 
因为本人需要,自己就动手修改了其中代码,拿来分享,能用到的朋友可以借鉴一下! 
\include\inc_typelink.php 
1、在这段代码后(大概263行) 
if($reID==0 && $typeid>0){ 
$dbrow = $this->dsql->GetOne("Select reID From dede_arctype where ID='$typeid' "); 
if(is_array($dbrow)) $reID = $dbrow['reID']; 

增加 
// 新增代码 
if($reID>0){ 
$dbrow = $this->dsql->GetOne("Select reID From dede_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 dede_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 dede_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,对于栏目分级太深,还想改变当前栏目样式的很有用!
本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

打开/include/taglib/channelartlist.lib.php文件 找到: $pv-Fields[typeurl] = GetOneTypeUrlA($typeids[$i]); 在它下面加入以下代码: if($typeids[$i][id] == $refObj-TypeLink-TypeInfos[id] || $typeids[$i][id] == $refObj-TypeLink-TypeInfos[topid]
{dede:channel type=son row=8 currentstyle=lia href=~typelink~ class=thisclass~typename~/a /li}lia href=[field:typelink/][field:typename/]/a /li{/dede:channel} 这种调用方式currentstyle有效 但是: {dede:channel type=son row=8 typeid=1 curren
我们在用DEDECMS建站时,常常会做二级栏目的功能,既要用到二级栏目,也就要通过DEDE标签再套标签的方式来实现调用,而DEDECMS多层标签调用只支持channelartlist,也就是说我们只能通过dede:channelartlist标签才能调出二级栏目,我们用dede:channelartlist
一 精简设置篇: 不需要的功能统统删除。比如不需要会员就将member文件夹删除。删除多余组件是避免被hack注射的最佳办法。 织梦可删除目录列表:member会员功能 special专题功能 install安装程序(必删) company企业模块 plus\guestbook留言板 以及其他模块一
我们在用织梦系统制作网站时,经常会用到channel标签来调子栏目。但是,很多朋友会遇到这种情况在使用channel标签来调子栏目的时候,指定 type=son typeid=x 发现currentstyle无效。今天笔者就跟大家分享一下解决方法。 1、解决channel标签currentstyle样式
打开include\taglib\channelartlist.lib.php 找到 $pv -Fields[ typeurl ]=GetOneTypeUrlA( $typeids [ $i ]); 在此行代码下方增加以下代码: if ( $typeids [ $i ][ id ]== $refObj -TypeLink-TypeInfos[ id ]|| $typeids [ $i ][ id ]== $refObj -TypeLink