专业的织梦模板下载平台,更多精品模板,超低模板价格,网站建设如此简单!-互创湾
当前位置:主页 > 建站教程 > 二次开发 >

织梦自动获取当前栏目的顶级栏目名称解决方案

发布时间:2018-01-05 来源:未知 浏览: 关键词:
这篇文章主要为大家介绍了dedecms调用当前栏目ID与当前栏目顶级ID的方法,涉及sql调用的技巧,非常具有实用价值,需要的朋友可以参考下,具体分析如下:

一、当前所在栏目ID的方法如下:
调用代码:
        {dede:type}[field:typename /]{/dede:type}
如果是在{dede:sql}里面调用当前栏目ID的话,调用方法如下:
       {dede:sql sql='Select * from dede_arctype where id = ~typeid~ '} [field:字段]{/dede:sql}

二、当前栏目的顶级栏目ID调用:
在include文件夹中找到common.func.php这个文件,底部插入下面代码:
//获取顶级栏目名
function GetTopTypename($id)
{
    global $dsql;
    $row = $dsql->GetOne("SELECT typename,topid FROM  `dede_arctype` WHERE id= $id");
    if ($row['topid'] == '0')
    {
        return $row['typename'];
    }
    else
    {
        $row1 = $dsql->GetOne("SELECT typename FROM  `dede_arctype` WHERE id= $row[topid]");
        return $row1['typename'];
    }
}
前端调用:{dede:field name='typeid' function="GetTopTypename(@me) /}

方法二:dede:field标签直接调用
 
    {dede:field.typeid runphp='yes'}
        $ID = @me; 
        $sql ="SELECT * FROM `cmswu_arctype` WHERE id=$ID";  
        $query = mysql_query($sql);
        $row = mysql_fetch_array($query); 
        $typeID = "$row[topid]"; 
        if($typeID == '0') 
          { 
           @me = $row[seotitle];
            }
        else{
        $sql = "SELECT `seotitle` FROM `cmswu_arctype` WHERE id=$typeID";
        $query = mysql_query($sql);
        $row = mysql_fetch_array($query); 
        @me = $row[seotitle];}        
        {/dede:field.typeid}
注:对应的“_arctype”表前缀根据自己表名称而定。

责任编辑:互创青年
共有人阅读,期待你的评论!评论
CopyRight © 2015-2016 互创湾模板网 版权所有  备案号:苏ICP备15051054号