使用 typename
这是最简单、最直接的方法,适用于绝大多数情况。
(图片来源网络,侵删)
基本用法
在列表页模板文件(通常是 list_artlist.htm)中,您可以直接使用 {dede:field.typename/} 标签来获取当前列表页所对应的栏目名称。
示例代码:
<h1>{dede:field.typename/}</h1>
<div class="list">
{dede:list pagesize='10'}
<li>
<a href="[field:arcurl/]">[field:title/]</a>
<span>[field:pubdate function="MyDate('Y-m-d',@me)"/]</span>
</li>
{/dede:list}
</div>
说明:
{dede:field.typename/} 会直接输出当前栏目在后台设置的“栏目名称”。
- 这个标签通常放在
<h1> 标签里作为页面的主标题,或者在面包屑导航中使用。
进阶用法:获取栏目链接
在很多情况下,您不仅需要栏目名称,还需要一个指向该栏目列表页的链接,这时,您可以使用 {dede:field name='typeid' function='GetTypeName(@me)'/} 的方式,并配合 typelink
调用栏目名称并附带链接
{dede:typelink/} 标签会直接生成一个包含栏目名称和链接的 <a>
示例代码:
(图片来源网络,侵删)
<!-- 面包屑导航示例 -->
<div class="breadcrumb">
<a href="/">首页</a> > {dede:typelink/}
</div>
<!-- 或者,如果您想手动控制链接和样式 -->
<div class="current-category">
您正在浏览:<a href="{dede:field name='typeid' function='GetListUrl(@me)'}">{dede:field.typename/}</a>
</div>
说明:
{dede:typelink/}:这是最便捷的方式,直接输出 <a href="栏目链接">栏目名称</a>。
{dede:field name='typeid' function='GetListUrl(@me)'}:这种方式更灵活,它调用了 GetListUrl 这个自定义函数,根据当前栏目的ID(typeid)获取其列表页的URL,您可以把它和任何标签组合使用。
高级用法:调用顶级栏目名称
您的栏目结构是多级的(网站首页 -> 新闻中心 -> 国内新闻),但您希望在列表页只显示“新闻中心”这个一级栏目的名称,这时就需要调用顶级栏目。
调用顶级栏目名称
使用 {dede:field.typeid/} 获取当前栏目ID,然后通过SQL查询或自带的函数来获取其顶级栏目名称。
使用SQL查询(推荐,灵活可控)
在列表页模板中,使用 {dede:sql} 标签执行一条SQL语句。
示例代码:
<h1>
当前栏目:{dede:field.typename/}
</h1>
<h2>
顶级栏目:{dede:sql sql="SELECT typename FROM dede_arctype WHERE id=~topid~"}
[field:typename/]
{/dede:sql}
</h2>
代码解释:
dede_arctype 是存储栏目的数据表。
id=~topid~ 是织梦模板引擎的一个特殊用法,~topid~ 会被自动替换为当前栏目的顶级栏目ID,非常方便。
SELECT typename FROM ... 就是标准的SQL查询语句,用于获取顶级栏目的名称。
使用全局变量(需要修改PHP文件,不推荐新手)
这个方法需要修改核心文件,会随着织梦升级而失效,但也是一种思路。
- 打开
/include/common.func.php 文件,在最后添加一个自定义函数:// 获取顶级栏目名称
function GetTopTypename($id)
{
global $dsql;
$row = $dsql->GetOne("SELECT typename,reid FROM dede_arctype WHERE id='$id'");
if ($row['reid'] == 0)
{
return $row['typename'];
}
else
{
return GetTopTypename($row['reid']);
}
}
- 然后在列表页模板中调用这个函数:
<h1>顶级栏目:{dede:field name='typeid' function='GetTopTypename(@me)'/}</h1>
总结与推荐
场景
推荐标签
示例
说明
仅显示栏目名称
{dede:field.typename/}
<h1>{dede:field.typename/}</h1>
最简单、最常用的方法。
显示栏目名称和链接
{dede:typelink/}
<a href="{dede:typelink/}">{dede:field.typename/}</a>
{dede:typelink/} 会直接生成完整的 <a>
显示顶级栏目名称
{dede:sql}
{dede:sql sql="SELECT typename FROM dede_arctype WHERE id=~topid~"}[field:typename/]{/dede:sql}
灵活,适用于多级栏目结构,无需修改核心文件。
在循环体内调用当前栏目
{dede:field.typename/}
{dede:list}<li>{dede:field.typename/}: [field:title/]</li>{/dede:list}
在 {dede:list} 循环内,{dede:field.typename/} 依然有效,但要注意它获取的是列表页本身的栏目,而非文章所属的栏目。
请务必确认:
- 您修改的是正确的模板文件,通常是
templets/您的模板目录/list_artlist.htm。
- 如果修改后没有生效,请登录织梦后台,点击 “生成” -> “更新HTML”,然后重新访问列表页,清除浏览器缓存。
希望这些方法能帮到您!
这是最简单、最直接的方法,适用于绝大多数情况。

基本用法
在列表页模板文件(通常是 list_artlist.htm)中,您可以直接使用 {dede:field.typename/} 标签来获取当前列表页所对应的栏目名称。
示例代码:
<h1>{dede:field.typename/}</h1>
<div class="list">
{dede:list pagesize='10'}
<li>
<a href="[field:arcurl/]">[field:title/]</a>
<span>[field:pubdate function="MyDate('Y-m-d',@me)"/]</span>
</li>
{/dede:list}
</div>
说明:
{dede:field.typename/}会直接输出当前栏目在后台设置的“栏目名称”。- 这个标签通常放在
<h1>标签里作为页面的主标题,或者在面包屑导航中使用。
进阶用法:获取栏目链接
在很多情况下,您不仅需要栏目名称,还需要一个指向该栏目列表页的链接,这时,您可以使用 示例代码: 说明: 您的栏目结构是多级的( 使用 使用SQL查询(推荐,灵活可控) 在列表页模板中,使用 示例代码: 代码解释: 使用全局变量(需要修改PHP文件,不推荐新手) 这个方法需要修改核心文件,会随着织梦升级而失效,但也是一种思路。 请务必确认: 希望这些方法能帮到您!{dede:field name='typeid' function='GetTypeName(@me)'/} 的方式,并配合 typelink
调用栏目名称并附带链接
{dede:typelink/} 标签会直接生成一个包含栏目名称和链接的 <a>

<!-- 面包屑导航示例 -->
<div class="breadcrumb">
<a href="/">首页</a> > {dede:typelink/}
</div>
<!-- 或者,如果您想手动控制链接和样式 -->
<div class="current-category">
您正在浏览:<a href="{dede:field name='typeid' function='GetListUrl(@me)'}">{dede:field.typename/}</a>
</div>
{dede:typelink/}:这是最便捷的方式,直接输出 <a href="栏目链接">栏目名称</a>。{dede:field name='typeid' function='GetListUrl(@me)'}:这种方式更灵活,它调用了 GetListUrl 这个自定义函数,根据当前栏目的ID(typeid)获取其列表页的URL,您可以把它和任何标签组合使用。
高级用法:调用顶级栏目名称
网站首页 -> 新闻中心 -> 国内新闻),但您希望在列表页只显示“新闻中心”这个一级栏目的名称,这时就需要调用顶级栏目。调用顶级栏目名称
{dede:field.typeid/} 获取当前栏目ID,然后通过SQL查询或自带的函数来获取其顶级栏目名称。{dede:sql} 标签执行一条SQL语句。<h1>
当前栏目:{dede:field.typename/}
</h1>
<h2>
顶级栏目:{dede:sql sql="SELECT typename FROM dede_arctype WHERE id=~topid~"}
[field:typename/]
{/dede:sql}
</h2>
dede_arctype 是存储栏目的数据表。id=~topid~ 是织梦模板引擎的一个特殊用法,~topid~ 会被自动替换为当前栏目的顶级栏目ID,非常方便。SELECT typename FROM ... 就是标准的SQL查询语句,用于获取顶级栏目的名称。
/include/common.func.php 文件,在最后添加一个自定义函数:// 获取顶级栏目名称
function GetTopTypename($id)
{
global $dsql;
$row = $dsql->GetOne("SELECT typename,reid FROM dede_arctype WHERE id='$id'");
if ($row['reid'] == 0)
{
return $row['typename'];
}
else
{
return GetTopTypename($row['reid']);
}
}
<h1>顶级栏目:{dede:field name='typeid' function='GetTopTypename(@me)'/}</h1>
总结与推荐
场景
推荐标签
示例
说明
仅显示栏目名称
{dede:field.typename/}<h1>{dede:field.typename/}</h1>最简单、最常用的方法。
显示栏目名称和链接
{dede:typelink/}<a href="{dede:typelink/}">{dede:field.typename/}</a>{dede:typelink/} 会直接生成完整的 <a>
显示顶级栏目名称
{dede:sql}{dede:sql sql="SELECT typename FROM dede_arctype WHERE id=~topid~"}[field:typename/]{/dede:sql}灵活,适用于多级栏目结构,无需修改核心文件。
在循环体内调用当前栏目
{dede:field.typename/}{dede:list}<li>{dede:field.typename/}: [field:title/]</li>{/dede:list}在
{dede:list} 循环内,{dede:field.typename/} 依然有效,但要注意它获取的是列表页本身的栏目,而非文章所属的栏目。
templets/您的模板目录/list_artlist.htm。
