dede在任一子级栏目获取顶级栏目名称 typename,包括该顶级栏目下
找到 include/taglib/type.lib.php , 复制, 重命名为 toptype.lib.php
查找 function lib_type(&$ctag,&$refObj)
修改为:
function lib_toptype(&$ctag,&$refObj)
查找 $row = $dsql->GetOne
注释掉 //$row = $dsql->GetOne("Select id,topid,description,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath,typelitpic From `dede_arctype` where id='$typeid' ");
添加3行:
$topid=$dsql->GetOne("Select topid From `dede_arctype` where id='$typeid' ");
$topid=$topid['topid'];
$row=$dsql->GetOne("Select id,topid,description,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath,typelitpic From `dede_arctype` where id='$topid' ");
模板调用: {dede:toptype}[field:typename/]{/dede:toptype}
修改后的toptype.lib.php
<?php
if
(!defined(
'DEDEINC'
))
exit
(
'Request Error!'
);
function
lib_toptype(&
$ctag
,&
$refObj
)
{
global
$dsql
,
$envs
;
$attlist
=
'typeid|0'
;
FillAttsDefault(
$ctag
->CAttribute->Items,
$attlist
);
extract(
$ctag
->CAttribute->Items, EXTR_SKIP);
$innertext
= trim(
$ctag
->GetInnerText());
if
(
$typeid
==0) {
$typeid
= ( isset(
$refObj
->TypeLink->TypeInfos[
'id'
]) ?
$refObj
->TypeLink->TypeInfos[
'id'
] :
$envs
[
'typeid'
] );
}