DEDECMS列表页如何调用当前栏目父级栏目

小编给大家分享一下DEDECMS列表页如何调用当前栏目父级栏目,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!

DEDECMS列表页怎么调用当前栏目父级栏目?

修改方法如下

首先找到下面的代码:

if($type=='top') 
{ 
$sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath 
From `dede_arctype` WHERE reid=0 And ishidden<>1 order by sortrank asc limit 0, $line "; 
} 
else if($type=='son') 
{ 
if($typeid==0) return ''; 
$sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath 
From `dede_arctype` WHERE reid='$typeid' And ishidden<>1 order by sortrank asc limit 0, $line "; 
} 
else if($type=='self') 
{ 
if($reid==0) return ''; 
$sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath 
FROM `dede_arctype` WHERE reid='$reid' And ishidden<>1 order by sortrank asc limit 0, $line "; 
}

然后将下面代码拷贝到其后面:

代码如下:

else if($type=='topone') 
{ 
if($reid==0) return ''; 
$rowR = $dsql->GetOne("SELECT * FROM `dede_arctype` WHERE id='$typeid' "); 
$topids = $rowR['topid']; 
$sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath 
FROM `dede_arctype` WHERE reid='0' And id='$topids' And ishidden<>1 order by sortrank asc limit 0, $line "; 
} 
else if($type=='fatherlist') 
{ 
$rowR = $dsql->GetOne("SELECT * FROM `dede_arctype` WHERE id='$typeid' "); 
$reid = $rowR['reid']; 
$rowR = $dsql->GetOne("SELECT * FROM `dede_arctype` WHERE id='$reid' "); 
$reid = $rowR['reid']; 
$sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath 
FROM `dede_arctype` WHERE reid='$reid' And ishidden<>1 order by sortrank asc limit 0, $line "; 
}

说明topone是调用当前目录对应的*目录'fatherlist' 是调用上一级目录,当前目录对应的*目录标记:

代码如下:

{dede:channel type='topone'}[field:typename/]{/dede:channel}

这个方法绝对可以,如果想用链接的话,就要[field:typeurl].

看完了这篇文章,相信你对DEDECMS列表页如何调用当前栏目父级栏目有了一定的了解,想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!