修改dede当前位置的符号 和超链接。

dedecms中修改当前位置{dede:field.position},就是只要首页>一级栏目>二级栏目这样。

找到include/typelink.class.php,找到这个文件里的这个函数function GetPositionLink($islink=true) ,dedecms就是在这里判断是否读取链接,如果把true修改成falsh,这个函数就不执行了:

function GetOneTypeLink($typeinfos)

    {

        $typepage = $this->GetOneTypeUrl($typeinfos);

//lyy 判断长度截取

$alltypeinfos=$typeinfos['typename'];

if(strlen($typeinfos['typename'])>40){

$typeinfos['typename']=cn_substr($typeinfos['typename'],40)."…";

}

        $typelink = "<a href='".$typepage."' title='".$alltypeinfos."'>".$typeinfos['typename']."</a>";

        return $typelink;

    }

他 返回的是$typelink,而$typelink是有链接的, 把$typelink = "<a href='".$typepage."'>".$typeinfos['typename']."</a>";修改成  $typelink = "".$typeinfos['typename']."";链接就去掉了,而且可以写成自己想要的格式。很方便。

另 外,有不少朋友想要修改首页>一级栏目>二级栏目中的“>”符号,比如不要了,或者是换成“>>”什么的,其实很简单,在 后台就可以设置,进入系统---系统基本参数--核心设置--栏目位置的间隔符号,可以输入你喜欢的符号,**#%@#¥什么都可以,呵呵

edecms当前位置{dede:field name='position'/}修改,如何去掉>


Dedecms当前位置{dede:field name='position'/}修改,如何去掉>

 

在google里搜了半天,搜到了,baidu搜不到,BS。

原文如下:
--------------------------------------------------------------
一、修改{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];

你可能感兴趣的:(修改dede当前位置的符号 和超链接。)