dede5.7当前位置{dede:field.position}的修改方法

一、修改{dede:field name='position'/}的文字间隔符,官方默认的是>周公解梦
 
在include/typelink.class.php第101行左右将>修改为你想要的符号即可
 
二、去掉{dede:field name='position' /}最后的分隔符>
 
1 {dede:field name='position' runphp='yes'}
2  
3 $a=mb_strlen(@me);//计算字符串的长度
4  
5 @me=cn_substr(@me,$a-2,-1);//截取字符
6  
7 {/dede:field}
 
三、{dede:field name='position'/} 中去掉 > 并去掉最后一个文本的链接的解决方案
 
01 {dede:field name='position' runphp='yes'}
02  
03     $tc=" > ";                
04  
05     $tf=split($tc,@me);                      
06  
07     $tn=count($tf);
08  
09     for($iij=0;$iij<($tn-1);$iij++){
10  
11         if($iij==($tn-2)){$tf[$iij]=strip_tags($tf[$iij]);}
12  
13         $tl=$tl.$tf[$iij];
14  
15     }
16  
17     @me=$tl;
18  
19    echo @me;
20  
21 {/dede:field}
 
如果还需要分隔符的话,就把$tl=$tl.$tf[$iij]; 换成 现成网址
$tl=$tl."空格分隔符空格".$tf[$iij];
 
备注:第二种办法是去掉了最后一个>,但链接还是显示的(大部分在栏目页时都不显示当前栏目链接),栏目页就这样调用了,满足了!
内容页就用笨办法,在后面加上“正文”两字。
 
dedecms中修改当前位置{dede:field.position},就是只要首页>一级栏目>二级栏目这样。
找到include/typelink.class.php,找到这个文件里的这个函数function GetPositionLink($islink=true) ,dedecms就是在这里判断是否读取链接,如果把true修改成falsh,这个函数就不执行了:
 
1 function GetOneTypeLink($typeinfos)
2 {
3   $typepage = $this->GetOneTypeUrl($typeinfos);
4   $typelink = "<a href='".$typepage."'>".$typeinfos['typename']."</a>";
5   return $typelink;
6 }
他 返回的是$typelink,而$typelink是有链接的, 把$typelink = "<a href='".$typepage."'>".$typeinfos['typename']."</a>";修改成  $typelink = "".$typeinfos['typename']."";链接就去掉了,而且可以写成自己想要的格式。很方便。
另 外,有不少朋友想要修改首页>一级栏目>二级栏目中的“>”符号,比如不要了,或者是换成“>>”什么的,其实很简单,在 后台就可以设置,进入系统---系统基本参数--核心设置--栏目位置的间隔符号,可以输入你喜欢的符号,**#%@#¥什么都可以。