增加channel标签的type父栏目调用并支持currentstyle
问题描述:增加channel标签的type父栏目调用并支持currentstyle
解决方法:\include\taglib\channel.lib.php
1、在这段代码后(大概91-96行)
else if($type=='self')
{
if($reid==0) return '';
$sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
FROM `arctype` WHERE reid='$reid' And ishidden<>1 order by sortrank asc limit $limit, $line ";
}
增加
// 新增代码以支持parent参数
else if($type=='parent')
{
if($topid==0) return '';
$sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
FROM `arctype` WHERE reid='$topid' And ishidden<>1 order by sortrank asc limit $limit, $line ";
}
// 新增代码结束结束
2、然后修改以下代码(大概143行):
if( ( $row['id']== $refObj->TypeLink->TypeInfos['id'] || ($topid==$row['id'] && $type=='top')) && $currentstyle!='' )
改为:
if( ( $row['id']== $refObj->TypeLink->TypeInfos['id'] || ($topid==$row['id'] && $type=='top') || ($reid==$row['id'] && $type=='parent')) && $currentstyle!='' )
//此处增加了 || ($reid==$row['id'] && $type=='parent')这段用于判断parent时的当前栏目
经过2个步骤的修改
可以实现2个功能:
1、调用父级栏目(上级),对于栏目分级太深的很有用
方法:
{dede:channel type='parent'}{dede:channel}
2、可以调用currentstyle,对于栏目分级太深,还想改变当前栏目样式的很有用!
解决方法:\include\taglib\channel.lib.php
1、在这段代码后(大概91-96行)
else if($type=='self')
{
if($reid==0) return '';
$sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
FROM `arctype` WHERE reid='$reid' And ishidden<>1 order by sortrank asc limit $limit, $line ";
}
增加
// 新增代码以支持parent参数
else if($type=='parent')
{
if($topid==0) return '';
$sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
FROM `arctype` WHERE reid='$topid' And ishidden<>1 order by sortrank asc limit $limit, $line ";
}
// 新增代码结束结束
2、然后修改以下代码(大概143行):
if( ( $row['id']== $refObj->TypeLink->TypeInfos['id'] || ($topid==$row['id'] && $type=='top')) && $currentstyle!='' )
改为:
if( ( $row['id']== $refObj->TypeLink->TypeInfos['id'] || ($topid==$row['id'] && $type=='top') || ($reid==$row['id'] && $type=='parent')) && $currentstyle!='' )
//此处增加了 || ($reid==$row['id'] && $type=='parent')这段用于判断parent时的当前栏目
经过2个步骤的修改
可以实现2个功能:
1、调用父级栏目(上级),对于栏目分级太深的很有用
方法:
{dede:channel type='parent'}{dede:channel}
2、可以调用currentstyle,对于栏目分级太深,还想改变当前栏目样式的很有用!