广告位招租 qq245909083

dedecms 调用当前栏目父级栏目地址和栏目名称

分享时间:2017-12-23 1124 热度℃
偶尔会遇到需要在当前子栏目调用父级栏目地址和名称,下面的代码虽然有点长,但是好在不需要修改系统文件。
dedecms 5.7可用。
结果形式:
<a href="父级栏目地址">父级栏目名称</a>
复制代码
直接在模板中使用,标签如下:
<a href={dede:field.typeid runphp='yes'"}
   global $dsql ;
   $reid = $dsql->GetOne("SELECT reid FROM dede_arctype where id=@me");
   $reid = $reid['reid'];
   $typename = $dsql->GetOne("SELECT typedir FROM dede_arctype where id=$reid");
   @me=str_replace('{cmspath}','',$typename['typedir']);
{/dede:field.typeid}>
{dede:field.typeid runphp='yes'"}
   global $dsql ;
   $reid = $dsql->GetOne("SELECT reid FROM dede_arctype where id=@me");
   $reid = $reid['reid'];
   $typename = $dsql->GetOne("SELECT typename FROM dede_arctype where id=$reid");
   @me=$typename['typename'];
{/dede:field.typeid}
</a>
复制代码
此代码会出现的问题:当前栏目为顶级时,无父级,不显示。
带判断的:
{dede:field.typeid runphp='yes'}
$ID = @me;
$sql = "SELECT * FROM `dede_arctype` WHERE id=$ID";$query = mysql_query($sql);$row=mysql_fetch_array($query);
$relID = "$row[reid]";
if($relID == 0) {
@me = "<a href='".$row['typedir']."'>".$row['typename']."</a>";
$url=$cfg_basehost.$cfg_cmspath;@me=str_replace('{cmspath}',

$url,@me);
}
else
{
$sql = "SELECT * FROM `dede_arctype` WHERE id=$relID";$query = mysql_query($sql);$row=mysql_fetch_array($query);
@me = "<a href='".$row['typedir']."'>".$row['typename']."</a>";
$url=$cfg_basehost.$cfg_cmspath;@me=str_replace('{cmspath}',$url,@me);
}
{/dede:field.typeid}
返回顶部