zoukankan      html  css  js  c++  java
  • 织梦获取/顶级栏目/当前栏目/上级栏目/的相关信息

    前端很多时候需要直接获取一个栏目的相关信息,获取在某个页面上获取顶级或者上一级栏目的相关信息,这样我们可以自己写个自定义方法来实现。

    打开 /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 `#@_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 `#@_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 `#@_arctype` where id = $typeid";
    		$rs = $dsql->GetOne($query);
    		$reid = $rs['reid']; 
    		$query2 = "SELECT * FROM `#@_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 #@_arctype WHERE id=@me");$reid = "$row[reid]"; $topid = "$row[topid]";if($reid == 0) @me = $row[content];else $row = $dsql->GetOne("SELECT * FROM #@_arctype WHERE id=$topid");@me = $row[content];{/dede:field.typeid}

    获取顶级的是topid

    获取上级的是reid

  • 相关阅读:
    168. Excel Sheet Column Title
    171. Excel Sheet Column Number
    264. Ugly Number II java solutions
    152. Maximum Product Subarray java solutions
    309. Best Time to Buy and Sell Stock with Cooldown java solutions
    120. Triangle java solutions
    300. Longest Increasing Subsequence java solutions
    63. Unique Paths II java solutions
    221. Maximal Square java solutions
    279. Perfect Squares java solutions
  • 原文地址:https://www.cnblogs.com/dedehtml/p/9901406.html
Copyright © 2011-2022 走看看