在织梦CMS中调用父级栏目的链接和名称
织梦CMS调用父级栏目链接和名称的方法如下: 1. 在模板中,使用`[field:parentid runphp='yes']@me = (string)@me; [/field:parentid]`获取当前栏目的父级ID。 2. 使用`[field:parentid runphp='yes']@me = (array_search(@me,$menuarr)); [/field:parentid]`获取父级栏目在菜单数组中的索引。 3. 使用`[field:parentlink/]`获取父级栏目的链接。 4. 使用`[field:parentname/]`获取父级栏目的名称。
打开文件
/include/taglib/channel.lib.php
找到代码
elseif($type=='self'){if($reid==0)return'';$sql="SELECTid,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepathFROM`dede_arctype`WHEREreid='$reid'Andishidden<>1orderbysortrankasclimit0,$line";}
在其后添加
elseif($type=='topone'){if($reid==0)return'';$rowR=$dsql->GetOne("SELECT*FROM`dede_arctype`WHEREid='$typeid'");$topids=$rowR['topid'];$sql="SELECTid,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepathFROM`dede_arctype`WHEREreid='0'Andid='$topids'Andishidden<>1orderbysortrankasclimit0,$line";}elseif($type=='fatherlist'){$rowR=$dsql->GetOne("SELECT*FROM`dede_arctype`WHEREid='$typeid'");$reid=$rowR['reid'];$rowR=$dsql->GetOne("SELECT*FROM`dede_arctype`WHEREid='$reid'");$reid=$rowR['reid'];$sql="SELECTid,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepathFROM`dede_arctype`WHEREreid='$reid'Andishidden<>1orderbysortrankasclimit0,$line";}
然后就可以在模板中调用父级栏目和父级顶级栏目了:
{dede:channeltype='fatherlist'}[field:typename/]{/dede:channel}{dede:channeltype='topone'}[field:typename/]{/dede:channel}