dede如何去掉当前位置position后面的箭头


时间:2013-05-29所属栏目:织梦教程 来源: 未知 热度: 26

当前位置的定位标签{dedefield name='position'},调用后的页面显示上,最后一个栏目名字后面始终会带一个箭头符号或者是间隔符,如何去掉dede当前位置标签 {dedefield name='position'}后面的符号呢?网上有一个办法就是判断最后一个字符的长度,进行截取,但是这样有时候会导致截取的字符过多或者过少,让 页面变乱,下面这个方法比较简单易用。

理论是,dede的当前位置标签{dedefield name='position'}结构是 首页 > 主栏目 > 子栏目 > ,这就说明,而箭头符号字段数据都是在后台设置后存储在数据库的,所以肯定有一个php代码是调用这个字段数据,经过数据库查看后发现是 “cfg_list_symbol”这个字段名,接下来就找到定位标签{dedefield name='position'}的php文件“include/typelink.class.php”,找到132行:

return $this->valuePosition.$this->SplitSymbol;

将后面的.$this->SplitSymbol去掉,保存,看看页面是不是好了,变成了:

首页 > 主栏目 > 子栏目

这样让网站的定位导航更简洁一些了。

再做些其他的对最后位置的修饰也可以:


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;

                 //lyy对最后一个位置值处理20136-16

                $arr=explode($this->SplitSymbol,$this->valuePosition);

                $last=array_pop($arr);

                $arr[]=''.$last.''; //只对最后一个加粗

                $this->valuePosition=implode($this->SplitSymbol,$arr);

                //return $this->valuePosition.$this->SplitSymbol;

//return "".$this->valuePosition."";

return $this->valuePosition;

            }

你可能感兴趣的:(织梦常见问题)