导航首页 » 网站优化

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

2022/11/26 08:45    魔司收录网    已浏览129次

一、修改{dede:field name='position'/}的文字间隔符,官方默认的是>周公解梦
 
在include/typelink.class.php第101行左右将>修改为你想要的符号即可
 
二、去掉{dede:field name='position' /}最后的分隔符>
 
{dede:field name='position' runphp='yes'}

$a=mb_strlen(@me);//计算字符串的长度

@me=cn_substr(@me,$a-2,-1);//截取字符

{/dede:field}
 
三、{dede:field name='position'/} 中去掉 > 并去掉最后一个文本的链接的解决方案
 
{dede:field name='position' runphp='yes'}

    $tc=" > ";                 

    $tf=split($tc,@me);                       

    $tn=count($tf);

    for($iij=0;$iij<($tn-1);$iij++){

        if($iij==($tn-2)){$tf[$iij]=strip_tags($tf[$iij]);}

        $tl=$tl.$tf[$iij];

    }

    @me=$tl;

   echo @me;

{/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,这个函数就不执行了:
 
function GetOneTypeLink($typeinfos)
{
  $typepage = $this->GetOneTypeUrl($typeinfos);
  $typelink = "<a href='".$typepage."'>".$typeinfos['typename']."</a>";
  return $typelink;
}
他 返回的是$typelink,而$typelink是有链接的, 把$typelink = "<a href='".$typepage."'>".$typeinfos['typename']."</a>";修改成  $typelink = "".$typeinfos['typename']."";链接就去掉了,而且可以写成自己想要的格式。很方便。
另 外,有不少朋友想要修改首页>一级栏目>二级栏目中的“>”符号,比如不要了,或者是换成“>>”什么的,其实很简单,在 后台就可以设置,进入系统---系统基本参数--核心设置--栏目位置的间隔符号,可以输入你喜欢的符号,**#%@#¥什么都可以。