织梦(dedecms)在列表与内容页中获取顶级栏目ID

2017-04-13 dedecms

织梦

(dedecms)在模板(列表与内容页)中获取顶级栏目ID,这个在我们做频道图片时是常用的,所有它在有些情况下还是非常实用的,但是织梦开源的代码是实现不了的,下面

笔记部落

就给大家分享一下吧。 如果你在某个栏目要做banner或其他的,只要

素材

上要加上那么一个数字就完全是可以用到它的。

打开 /include/taglib/type.lib.php ,找到

$row = $dsql->GetOne("Select id,typename,typedir,isdefault, ispart,defaultname,namerule2,moresite,siteurl, sitepath From zmb_arctype where id='$typeid' ");

在可选择的字段里面增加topid字段,如下

$row = $dsql->GetOne("Select id,topid,typename, typedir,isdefault,ispart,defaultname,namerule2, moresite,siteurl,sitepath From zmb_arctype where id='$typeid' ");

然后接着找到

if(!is_array($row)) return '';

在下面添加一行新的代码,如下:

if(!is_array($row)) return ''; if($row['topid']==0){$row['topid']=$row['id'];}

到这里对于织梦源代码的修改已经完成,在模板中的调用方法为:{dede:type}[field:topid /]{/dede:type}

这样无论是在频道页、列表页还是文章页都可以很容易的获取到当前顶级栏目ID了,对于需要把顶级栏目ID作为参数传递给自定义函数的朋友们也可以方便使用了哦。