事情:
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'/}。 最终效果图如下:
更多信息请查看IT技术专栏