在织梦DedeCMS中,获取当前栏目路径及栏目名称可以使用以下方法:,,1. 获取当前栏目路径:{dede:field name='typedir'/}
,2. 获取当前栏目名称:{dede:field name='typename'/}
,,这些标签可以直接在模板文件中使用。
在织梦(dedecms)内容管理系统中,获取当前栏目路径及栏目名称是一个常见的需求,以下是一些方法来实现这一功能:
1、使用标签获取当前页面路径页中,可以使用{dede:field name='arcurl'/}
标签来获取当前页面的路径,这个标签在栏目页上是无效的。
2、获取网站所有栏目名称及路径列表:要获取网站所有栏目的名称和路径列表,可以使用{dede:channel}
标签,调用方式如下:
<ul>{dede:channel type='top' row='11'}<li class="navbg"><a href='[field:typelink/]'>[field:typename/]</a></li>{/dede:channel}</ul>
这段代码会生成一个包含所有顶级栏目名称和对应链接的无序列表。
3、获取当前栏目的顶级栏目名称:如果需要获取当前栏目的顶级栏目名称,可以在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)" /}
这将返回当前栏目的顶级栏目名称。
4、获取当前栏目的父栏目:如果需要获取当前栏目的父栏目名称,可以在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)' /}
这将返回当前栏目的父栏目名称。
FAQs
1、页获取当前页面的路径?
在内容页中,可以使用{dede:field name='arcurl'/}
标签来获取当前页面的路径,但请注意,这个标签在栏目页上是无效的。
2、如何获取网站所有栏目的名称和路径列表?
要获取网站所有栏目的名称和路径列表,可以使用{dede:channel}
标签,调用方式如下:
<ul> {dede:channel type='top' row='11'} <li class="navbg"><a href='[field:typelink/]'>[field:typename/]</a></li> {/dede:channel} </ul>
这段代码会生成一个包含所有顶级栏目名称和对应链接的无序列表。