织梦(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作为参数传递给自定义函数的朋友们也可以方便使用了哦。

支付宝扫码打赏 微信扫码打赏

如果本文对你有帮助,欢迎打赏本站

喜欢 ()or分享
    匿名评论
  • 评论
人参与,条评论