本文实例讲述了DEDECMS列表页调用当前栏目父级栏目的方法。分享给大家供大家参考。具体实现方法如下: 修改方法如下 首先找到如下代码: 代码如下: if($type==top){$sql = SELECT id,typename,
本文实例讲述了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建站有所帮助。