织梦前端很多时候需要直接获取一个栏目的相关信息,获取在某个页面上获取顶级或者上一级栏目的相关信息,这样我们可以自己写个自定义方法来实现。
打开 \include\extend.func.PHP 在最下面添加
/** * 获取顶级栏目相关信息 * * @access public * @param string $tID 栏目ID * @param string $fIEld 栏目字段 * @return string */if ( ! function_exists('gettoptype')){ function gettoptype($tID,$fIEld) { global $dsql,$cfg_Cs; if(!is_array($cfg_Cs)) { require_once(DEDEDATA."/cache/inc_catalog_base.inc"); } if(!isset($cfg_Cs[$tID][0]) || $cfg_Cs[$tID][0]==0) { $topID = $tID; } else { $topID = GettopID($cfg_Cs[$tID][0]); } $row = $dsql->Getone("SELECT * FROM `dede_arctype` WHERE ID=$topID"); if($fIEld=='ID') return $topID; if($fIEld=='typename') return $row['typename'];//栏目名称 if($fIEld=='typeurl') return GetoneTypeUrlA($row);//栏目链接 if($fIEld=='typenamedir') return $row['typenamedir'];//栏目英文名称 if($fIEld=='SEOTitle') return $row['SEOTitle'];//栏目SEO标题 if($fIEld=='description') return $row['description'];//栏目描述 if($fIEld=='content') return $row['content'];//栏目内容 }}/** * 获取当前栏目相关信息 * * @access public * @param string $tID 栏目ID * @param string $fIEld 栏目字段 * @return string */if ( ! function_exists('getCurtype')){ function getCurtype($tID,$fIEld) { global $dsql; $row = $dsql->Getone("SELECT * FROM `dede_arctype` WHERE ID=$tID"); if($fIEld=='ID') return $tID; if($fIEld=='typename') return $row['typename'];//栏目名称 if($fIEld=='typeurl') return GetoneTypeUrlA($row);//栏目链接 if($fIEld=='typenamedir') return $row['typenamedir'];//栏目英文名称 if($fIEld=='SEOTitle') return $row['SEOTitle'];//栏目SEO标题 if($fIEld=='description') return $row['description'];//栏目描述 if($fIEld=='content') return $row['content'];//栏目内容 }}/** * 获取上级栏目相关信息 * * @access public * @param string $tID 栏目ID * @param string $fIEld 栏目字段 * @return string */if ( ! function_exists('getRetype')){ function getRetype($tID,$fIEld) { global $dsql; $typeID = $tID; $query = "SELECT reID FROM `dede_arctype` where ID = $typeID"; $rs = $dsql->Getone($query); $reID = $rs['reID']; $query2 = "SELECT * FROM `dede_arctype` where ID = $reID"; $row = $dsql->Getone($query2); if($fIEld=='ID') return $tID; if($fIEld=='typename') return $row['typename'];//栏目名称 if($fIEld=='typeurl') return GetoneTypeUrlA($row);//栏目链接 if($fIEld=='typenamedir') return $row['typenamedir'];//栏目英文名称 if($fIEld=='SEOTitle') return $row['SEOTitle'];//栏目SEO标题 if($fIEld=='description') return $row['description'];//栏目描述 if($fIEld=='content') return $row['content'];//栏目内容 }} |
模板里调用方法
需要哪个字段,就对应的填上字段名即可
获取顶级栏目相关信息
{dede:fIEld.typeID function=gettoptype(@me,typename)/}
获取当前栏目相关信息
{dede:fIEld.typeID function=getCurtype(@me,typename)/}
获取上级栏目相关信息
{dede:fIEld.typeID function=getRetype(@me,typename)/}
不喜欢添加自定义方法的同学可以试试这样
{dede:fIEld.typeID runPHP=yes}global $dsql;$row = $dsql->Getone("SELECT * FROM dede_arctype WHERE ID=@me");$reID = "$row[reID]"; $topID = "$row[topID]";if($reID == 0) @me = $row[content];else $row = $dsql->Getone("SELECT * FROM dede_arctype WHERE ID=$topID");@me = $row[content];{/dede:fIEld.typeID} |
获取顶级的topID
获取上级的reID
总结
以上是内存溢出为你收集整理的织梦获取顶级栏目\当前栏目\上级栏目的相关信息教程全部内容,希望文章能够帮你解决织梦获取顶级栏目\当前栏目\上级栏目的相关信息教程所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)