/templets/default/article_article.htm
(文章内容页模板)或/templets/default/list_article.htm
(列表页模板)。,,2. 在模板文件中,找到你想要显示顶级栏目名称和简介的位置。,,3. 使用以下标签来调用顶级栏目的名称和简介:,,“html,{dede:field name='topname'/},
`,,这个标签将会输出当前子栏目所属的顶级栏目的名称。,,
`html,{dede:field name='topdescription' function='htmlspecialchars'/},
`,,这个标签将会输出当前子栏目所属的顶级栏目的简介。
function=’htmlspecialchars’`用于对简介中的HTML特殊字符进行转义,以防止XSS攻击。,,4. 保存模板文件并重新生成页面,就可以看到子栏目中已经成功调用了其顶级栏目的名称和简介。,,注意:以上代码示例是基于DedeCMS V5.7版本,如果你使用的是其他版本,可能会有细微差别,请参考对应版本的文档。Dedecms(织梦CMS)是一个广泛使用的内容管理系统,它允许用户通过标签调用各种信息,在子栏目中调用其顶级栏目名称和简介是一项常见的需求,特别是在构建多级导航菜单时,下面将详细介绍如何在dedecms子栏目中调用其顶级栏目名称和简介的方法:
调用顶级栏目名称及简介的方法
1、方法一
代码示例:
{dede:field name='id' runphp="yes"} $dsql = new DedeSql(false); $a = "SELECT tp.reid FROM dede_arctype as tp where tp.id=@me"; $arcRow = $dsql>GetOne($a); $reid = $arcRow['reid']; if ($reid == 0) { @me = '首页'; } else { $b = "SELECT * FROM dede_arctype as tp where tp.id=$reid"; $tpRow = $dsql>GetOne($b); @me = $tpRow['typename']; // 获取顶级栏目名称 $url = $cfg_basehost . $cfg_cmspath; @me = str_replace('{cmspath}', $url, @me); } {/dede:field}
说明:此方法通过查询dede_arctype
表来获取顶级栏目的ID和名称,并生成链接。
2、方法二
代码示例:
{dede:field name='id' runphp="yes"} $dsql = new DedeSql(false); $a = "SELECT tp.reid FROM dede_arctype as tp where tp.id=@me"; $arcRow = $dsql>GetOne($a); $reid = $arcRow['reid']; if ($reid == 0) { @me = ''; } else { $b = "SELECT * FROM dede_arctype as tp where tp.id=$reid"; $tpRow = $dsql>GetOne($b); @me = $tpRow['description']; // 获取顶级栏目简介 } {/dede:field}
说明:此方法通过查询dede_arctype
表来获取顶级栏目的ID和简介,并将其显示出来。
3、方法三
代码示例:
{dede:field name='id' runphp="yes"} $dsql = new DedeSql(false); $a = "SELECT tp.reid FROM dede_arctype as tp where tp.id=@me"; $arcRow = $dsql>GetOne($a); $reid = $arcRow['reid']; if ($reid == 0) { @me = $row['typename']; } else { $b = "SELECT * FROM dede_arctype as tp where tp.id=$reid"; $tpRow = $dsql>GetOne($b); @me = $tpRow['typename']; // 获取顶级栏目名称 $url = $cfg_basehost . $cfg_cmspath; @me = str_replace('{cmspath}', $url, @me); } {/dede:field}
说明:此方法通过查询dede_arctype
表来获取顶级栏目的ID和名称,并生成链接。
4、方法四
代码示例:
{dede:field name='id' runphp="yes"} $dsql = new DedeSql(false); $a = "SELECT tp.reid FROM dede_arctype as tp where tp.id=@me"; $arcRow = $dsql>GetOne($a); $reid = $arcRow['reid']; if ($reid == 0) { @me = ''; } else { $b = "SELECT * FROM dede_arctype as tp where tp.id=$reid"; $tpRow = $dede>GetOne($b); @me = $tpRow['description']; // 获取顶级栏目简介 } {/dede:field}
说明:此方法通过查询dede_arctype
表来获取顶级栏目的ID和简介,并将其显示出来。
5、方法五
代码示例:
{dede:field name='id' runphp="yes"} $dsql = new DedeSql(false); $a = "SELECT tp.reid FROM dede_arctype as tp where tp.id=@me"; $arcRow = $dsql>GetOne($a); $reid = $arcRow['reid']; if ($reid == 0) { @me = $row['typename']; } else { $b = "SELECT * FROM dede_arctype as tp where tp.id=$reid"; $tpRow = $dsql>GetOne($b); @me = $tpRow['typename']; // 获取顶级栏目名称 $url = $cfg_basehost . $cfg_cmspath; @me = str_replace('{cmspath}', $url, @me); } {/dede:field}
说明:此方法通过查询dede_arctype
表来获取顶级栏目的ID和名称,并生成链接。
6、方法六
代码示例:
{dede:field name='id' runphp="yes"} $dsql = new DedeSql(false); $a = "SELECT tp.reid FROM dede_arctype as tp where tp.id=@me"; $arcRow = $dsql>GetOne($a); $reid = $arcRow['reid']; if ($reid == 0) { @me = ''; } else { $b = "SELECT * FROM dede_arctype as tp where tp.id=$reid"; $tpRow = $dsql>GetOne($b); @me = $tpRow['description']; // 获取顶级栏目简介 } {/dede:field}
说明:此方法通过查询dede_arctype
表来获取顶级栏目的ID和简介,并将其显示出来。
7、方法七
代码示例:
{dede:field name='id' runphp="yes"} $dsql = new DedeSql(false); $a = "SELECT tp.reid FROM dede_arctype as tp where tp.id=@me"; $arcRow = $dsql>GetOne($a); $reid = $arcRow['reid']; if ($reid == 0) { @me = $row['typename']; } else { $b = "SELECT * FROM dede_arctype as tp where tp.id=$reid"; $tpRow = $dsql>GetOne($b); @me = $tpRow['typename']; // 获取顶级栏目名称 $url = $cfg_basehost . $cfg_cmspath; @me = str_replace('{cmspath}', $url, @me); } {/dede:field}
说明:此方法通过查询dede_arctype
表来获取顶级栏目的ID和名称,并生成链接。
8、方法八
代码示例:
{dede:field name='id' runphp="yes"} $dsql = new DedeSql(false); $a = "SELECT tp.reid FROM dede_arctype as tp where tp.id=@me"; $arcRow = $dsql>GetOne($a); $reid = $arcRow['reid']; if ($reid == 0) { @me = ''; } else { $b = "SELECT * FROM dede_arctype as tp where tp.id=$reid"; $tpRow = $dsql>GetOne($b); @me = $tpRow['description']; // 获取顶级栏目简介 } {/dede:field}
说明:此方法通过查询dede_arctype
表来获取顶级栏目的ID和简介,并将其显示出来。
9、方法九
代码示例:
{dede:field name='id' runphp="yes"} $dsql = new DedeSql(false); $a = "SELECT tp.reid FROM dede_arctype as tp where tp.id=@me"; $arcRow = $dsql>GetOne($a); $reid = $arcRow['reid']; if ($reid == 0) { @me = $row['typename']; } else { $b = "SELECT * FROM dede_arctype as tp where tp.id=$reid"; $tpRow = $deqSql>GetOne($b); @me = $tpRow['typename']; // 获取顶级栏目名称 $url = $cfg_basehost . $cfg_cmspath; @me = str_replace('{cmspath}', $url, @me); } {/dede:field}
说明:此方法通过查询dede_arctype
表来获取顶级栏目的ID和名称,并生成链接。
10、方法十
代码示例:
{dede:field name='id' runphp="yes"} $dsql = new DedeSql(false); $a = "SELECT tp.reid FROM dede_arctype as tp where tp.id=@me"; $arcRow = $dsql>GetOne($a); $reid = $arcRow['reid']; if ($reid == 0) { @me = ''; } else { $b = "SELECT * FROM dede_arctype as tp where tp.id=$reid"; $tpRow = $dsql>GetOne($b); @me = $tpRow['description']; // 获取顶级栏目简介 } {/dede:field}
说明:此方法通过查询dede_arctype
表来获取顶级栏目的ID和简介,并将其显示出来。
表格对比不同方法的区别与应用场景
方法编号 | 调用内容 | 适用场景 | 优点 | 缺点 |
方法一 | 顶级栏目名称及链接 | 需要展示顶级栏目名称及链接的页面 | 简单直接,易于实现 | 需要修改模板文件 |
方法二 | 顶级栏目简介 | 需要展示顶级栏目简介的页面 | 可以详细描述栏目内容 | 需要编写额外PHP代码 |
方法三 | 顶级栏目名称及链接 | 需要展示顶级栏目名称及链接的页面 | 简单直接,易于实现 | 需要修改模板文件 |
方法四 | 顶级栏目简介 | 需要展示顶级栏目简介的页面 | 可以详细描述栏目内容 | 需要编写额外PHP代码 |
方法五 | 顶级栏目名称及链接 | 需要展示顶级栏目名称及链接的页面 | 简单直接,易于实现 | 需要修改模板文件 |
方法六 | 顶级栏目简介 | 需要展示顶级栏目简介的页面 | 可以详细描述栏目内容 | 需要编写额外PHP代码 |
方法七 | 顶级栏目名称及链接 | 需要展示顶级栏目名称及链接的页面 | 简单直接,易于实现 | 需要修改模板文件 |
方法八 | 顶级栏目简介 | 需要展示顶级栏目简介的页面 | 可以详细描述栏目内容 | 需要编写额外PHP代码 |
方法九 | 顶级栏目名称及链接 | 需要展示顶级栏目名称及链接的页面 | 简单直接,易于实现 | 需要修改模板文件 |
方法十 | 顶级栏目简介 | 需要展示顶级栏目简介的页面 | 可以详细描述栏目内容 | 需要编写额外PHP代码 |
相关FAQs(常见问题解答)
1、如何在子栏目页调用顶级栏目的名称?
回答:可以通过以下代码实现:
{dede:field name='id' runphp="yes"}
global $cfg_basehost,$cfg_cmspath,$cfg_indexurl;
$dsql = new DedeSql(false);
$a="SELECT * FROMdede_arctype
AS tp WHERE id=@me";
$arcRow = $dsql>GetOne($a);
if($arcRow['reid'] == 0) { @me = "".$arcRow['typename'].""; } else { @me = "".$arcRow['typename'].""; }
{/dede:field}
说明:此方法通过查询dede_arctype
表来获取顶级栏目的ID和名称,并将其显示出来。
2、如何在子栏目页调用顶级栏目的简介?
回答:可以通过以下代码实现:
{dede:field name='id' runphp="yes"}
global $cfg_basehost,$cfg_cmspath,$cfg_indexurl;
$dsql = new DedeSql(false);
$a="SELECT * FROMdede_arctype
AS tp WHERE id=@me";
$arcRow = $dsql>GetOne($a);
if($arcRow['reid'] == 0) { @me = "".$arcRow['description'].""; } else { @me = "".$arcRow['description'].""; }
{/dede:field}
说明:此方法通过查询dede_arctype
表来获取顶级栏目的ID和简介,并将其显示出来。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1230330.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复