muban大师 发表于 2020-12-30 11:02:01

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

事情:
       
        dede提供了面包屑的功能。但是最后面总会带一个'>'符号。甚是烦人。目标干掉它。
       
        第一种解决方法: 1. 在系统参数里面修改这个符号。
       
        第二种解决方法: 2. 使用截子符,runphp操作(网上百度很多,遗憾是我没有试验成功)。
       
        第三种解决方法: 3. 修改底层代码。(我采用的这种,试验了,可以)。
       
        解决:
       
        找到 include/typelink.class.php 文件。
        找到下面的方法。
       
        代码如下:
       
        //获得某类目的链接列表 如:类目一>>类目二>> 这样的形式
        //islink 表示返回的列表是否带连接
        function GetPositionLink($islink=true)
        {
        $indexpage = "";
        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'/}。 最终效果图如下:
       
       
https://www.adminbuy.cn/uploads/allimg/201230/1-201230110239302.jpg
页: [1]
查看完整版本: dede:field name=position去除最后一个大于符号