织梦(dedecms)在列表与内容页中获取顶级栏目ID
织梦
(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作为参数传递给自定义函数的朋友们也可以方便使用了哦。