织梦DEDECMS超简单获取上级栏目ID及顶级栏目ID

使用时请把前面的序号去除!!!

获取上级栏目ID

XML/HTML代码
  1. {dede:field.reid/}

获取顶级栏目ID

XML/HTML代码
  1. {dede:field.typeid function=‘GetTopid(@me)’/}

获取顶级栏目id,名称及链接

XML/HTML代码
  1. {dede:field.typeid function=“gettoptype(@me,id)”/} //id
  2. {dede:field.typeid function=“gettoptype(@me,name)”/} //名称
  3. {dede:field.typeid function=“gettoptype(@me,link)”/} //链接

修改 include/helpers/extend.helper.php,在结尾增加如下代码 :

XML/HTML代码
  1. /**
  2. * 获取一个类目的顶级栏目
  3. * @param string $tid 栏目ID
  4. * @return string
  5. */
  6. if ( ! function_exists(‘gettoptype’))
  7. {
  8. function gettoptype($tid,$action)
  9. {
  10. global $dsql,$cfg_Cs;
  11. if(!is_array($cfg_Cs))
  12. {
  13. require_once(DEDEDATA.”/cache/inc_catalog_base.inc”);
  14. }
  15. if(!isset($cfg_Cs[$tid][0]) || $cfg_Cs[$tid][0]==0)
  16. {
  17. $topid = $tid;
  18. }
  19. else
  20. {
  21. $topid = GetTopid($cfg_Cs[$tid][0]);
  22. }
  23. $row = $dsql->GetOne(“SELECT * FROM `#@__arctype` WHERE id=$topid”);
  24. $toptypename = $row[‘typename’];
  25. $toptypeurl = $topid;
  26. if($action==’id’) return $topid;
  27. if($action==’name’) return $toptypename;
  28. if($action==’link’) return GetOneTypeUrlA($row);
  29. }
  30. }