dede调用顶级栏目ID 方法一:
{dede:field.typeid function="GetTopid(@me)"/}
dede调用顶级栏目ID 方法二:
首先,在所需要调用顶级栏目ID的地方,添加这段标签语法:
{dede:type}[feild:topid/]{/dede:type}
第二,修改源文件,找到include目录下的taglib目录下的type.lib.php,找到这条语句:
$row = $dsql->GetOne("Select id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
From `dede_arctype` where id='$typeid' ");
修改成为:
$row = $dsql->GetOne("Select id,topid,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
From `dede_arctype` where id='$typeid' ");
在if(!is_array($row)) return “;下一行添加
if( $row['topid']==0){$row['topid']=$row['id'];}
这样,这条语句在顶级栏目还是子栏目,都可以调用了:
{dede:channelartlist typeid='1,2,3,4,5,6,7' row=7}
{dede:field name='typename'/}
{/dede:channelartlist}
本文介绍两种在DEDECMS中调用顶级栏目ID的方法。第一种是使用内置的字段函数GetTopid,第二种涉及修改源代码以实现更灵活的调用方式。通过这两种方法,无论是在顶级栏目还是子栏目中都能顺利获取到所需的顶级栏目ID。
940

被折叠的 条评论
为什么被折叠?



