当前位置 : 主页 > 建站教程 > dedecms >

dede:field name=position去除最后一个大于符号

来源:互联网 收集:自由互联 发布时间:2021-06-20
事情: dede提供了面包屑的功能。但是最后面总会带一个符号。甚是烦人。目标干掉它。 第一种解决方法: 1. 在系统参数里面修改这个符号。 第二种解决方法: 2. 使用截子符,runphp操
事情:

dede提供了面包屑的功能。但是最后面总会带一个'>'符号。甚是烦人。目标干掉它。

第一种解决方法: 1. 在系统参数里面修改这个符号。

第二种解决方法: 2. 使用截子符,runphp操作(网上百度很多,遗憾是我没有试验成功)。

第三种解决方法: 3. 修改底层代码。(我采用的这种,试验了,可以)。

解决:

找到 include/typelink.class.php 文件。
找到下面的方法。

代码如下:
//获得某类目的链接列表 如:类目一>>类目二>> 这样的形式
//islink 表示返回的列表是否带连接
function GetPositionLink($islink=true)
{
$indexpage = "<a href='".$this->indexUrl."'>".$this->indexName."</a>";
if($this->valuePosition!="" && $islink)
{
return $this->valuePosition;
}
else if($this->valuePositionName!="" && !$islink)
{
return $this->valuePositionName;
}
else if($this->TypeID==0)
{
if($islink)
{
return $indexpage;
}
else
{
return "没指定分类!";
}
}
else
{
if($islink)
{
$this->valuePosition = $this->GetOneTypeLink($this->TypeInfos);
if($this->TypeInfos['reid']!=0)
{
//调用递归逻辑
$this->LogicGetPosition($this->TypeInfos['reid'],true);
}
$this->valuePosition = $indexpage.$this->SplitSymbol.$this->valuePosition;
return $this->valuePosition.$this->SplitSymbol; //需要修改这里.....
}
else
{
$this->valuePositionName = $this->TypeInfos['typename'];
if($this->TypeInfos['reid']!=0)
{
//调用递归逻辑
$this->LogicGetPosition($this->TypeInfos['reid'],false);
}
return $this->valuePositionName;
}
}
}


将上面的需要修改的行,改成这样即可: return $this->valuePosition;

5. 最终模板调用的{dede:field name='position'/}。 最终效果图如下:

网友评论
相关栏目