找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1007|回复: 0
打印 上一主题 下一主题

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

[复制链接]

2500

主题

2513

帖子

7520

积分

论坛元老

Rank: 8Rank: 8

积分
7520
跳转到指定楼层
楼主
发表于 2018-2-13 20:40:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

因为本人需要,自己就动手修改了其中代码,拿来分享,能用到的朋友可以借鉴一下!
\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 ishidden1 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 ishidden1 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,对于栏目分级太深,还想改变当前栏目样式的很有用!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

用户反馈
客户端