DEDECMS列表页调用当前栏目父级栏目的方法

织梦教程 强烈建议 2024-02-06 14:17 109 0

  本文实例讲述了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建站有所帮助。



时间:(2024-02-06 14:17:57)
本站资源均来自互联网或会员发布,如果不小心侵犯了您的权益请与我们联系。我们将立即删除!谢谢!