巅峰霸主 > 设计开发 > 织梦教程 >

dedecms调用栏目标题名称和链接的方法

时间:2021-03-30 18:57:16  来源:巅峰霸主网  作者:烈火大地 点击:
摘要:当前栏目名称和链接调用方法 {dede:type}ahref=[field:typelink/][field:typename/]/a{/dede:type} 因为{dede:field name=arcurl/}这个获取当前页面路径的标签只能在内容页使用,栏目页没有效果的。所以在栏目页想获……

当前栏目名称和链接调用方法

{dede:type}
<a href=" [field:typelink  /] "> [field:typename/] </a>
{/dede:type}


因为{dede:field  name='arcurl'/} 这个获取当前页面路径的标签只能在内容页使用,栏目页没有效果的。所以在栏目页想获取当前栏目的路径及名称的话,就要用上面这个标签。

而获取网站所有栏目名称及路径列表的话,就要用到另一个标签: {dede:channel},调用方式如下:

调用所有栏目名称和链接

<ul>
{dede:channel  type='top' row='11'}
<li class="navbg"><a  href='[field:typelink/]'>[field:typename/]</a></li>
{/dede:channel}
</ul>


织梦dedeCMS网站栏目页获取当前栏目的顶级栏目名称的标签教程:

我们在使用做一些网站的时候,时常会碰到需要调用当前栏目的顶级栏目名称的时候,织梦默认{dede:field name='typename' /}  可以获取当前栏目页上一级栏目的名称,而不是当前栏目顶级栏目名称。

下面拓展出一个方法来实现这个效果、:

在include/common.func.php的最下方加入:

调用顶级栏目名

function GetTopTypename($id)
{
    global $dsql;
     $row = $dsql->GetOne("SELECT typename,topid FROM jiemou_arctype WHERE id=  $id");
    if ($row['topid'] == '0')
    {
        return  $row['typename'];
    }
    else
    {
        $row1 =  $dsql->GetOne("SELECT typename FROM jiemou_arctype WHERE id=  $row[topid]");
        return $row1['typename'];
    }
}

在文章页或者栏目列表页调用时,在所要调用栏目名称的位置加上下面这行代码即可实现。

{dede:field name='typeid' function="GetTopTypename(@me)" /}

在文章页中用下面这个方法来调用 

获取当前栏目的父栏目

写成一个函数放入include/extend.func.php文件中

function GetParentCategoryNameByID($CurrentID){
$tsql = new DedeSql(false); 
$typelink2 = '';
$tsql->SetQuery("Select i.typedir,i.typename From zz5unet_arctype t left join zz5unet_arctype i on i.id=t.reid where t.id='$CurrentID'");
$tsql->Execute('t');   
while($row = $tsql->GetArray('t',MYSQL_ASSOC))  
{
$typelink2 .= $row['typename'];  
}
return $typelink2;
}

调用方法:

{dede:field name='id' function='GetParentCategoryNameByID(@me)' /}


(责任编辑:陆柏熺)
评价:
用户名: 验证码: 看不清?点击更换


关注站长自媒体 获取更多优质内容

  • 百家号
    百家号
  • 头条号
    头条号
  • 企鹅号
    企鹅号

2019-2021 ©巅峰霸主网 京ICP备12023415号-2
返回
顶部