本文主要讲解更改织梦默认面包屑导航栏的修改。织梦面包屑导航默认用 “>”分隔,更改方法如下:
 

最简单方法更改分隔符

织梦后台就可以直接更改面包屑的导航分隔符,方法:后台——核心设置——栏目位置的间隔符号:把> 更改成你需要的分隔符。


 

织梦面包屑{dede:field name='position'/}一些实用技巧!

1、去掉{dede:field name='position' /}最后的分隔符>


(1)用下面代码代替{dede:field name='position' /}。
{dede:field name='position' runphp='yes'}

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

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

{/dede:field}

(2)或者可直接修改include/typelink.class.php这个文件
第132行

 return $this->valuePosition.$this->SplitSymbol;
  修改为

 return $this->valuePosition;

2、{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,这个
dedecms中修改当前位置{dede:field.position},就是只要首页>一级栏目>二级栏目这样。
找到include/typelink.class.php,找到这个文件里的这个函数function GetPositionLink($islink=true) ,dedecms就是在这里判断是否读取链接,如果把true修改成falsh,这个函数就不执行了:
 function GetOneTypeLink($typeinfos)
{
 $typepage = $this->GetOneTypeUrl($typeinfos);
 $typelink = "".$typeinfos['typename']."";
 return $typelink;
}
他 返回的是$typelink,而$typelink是有链接的, 把$typelink = "".$typeinfos['typename']."";修改成  $typelink = "".$typeinfos['typename']."";链接就去掉了,而且可以写成自己想要的格式。很方便。
另外,有不少朋友想要修改首页>一级栏目>二级栏目中的“>”符号,比如不要了,或者是换成“>>”什么的,其实很简单,在 后台就可以设置,进入系统---系统基本参数--核心设置--栏目位置的间隔符号,可以输入你喜欢的符号,**#%@#¥什么都可以,呵呵
=================
dedecms里修改,比如去掉超链接只保留文字什么的。
今天用dedecms做网站的时候就遇到了上次说的二级栏目,就是点击导航就直接进入第一个子栏目。可是,我们知道,{dede:field name='position'/}读取出来的可是这样的形式啊广州人才网 > 新闻资讯也就是说,如果我们有栏目页的话,点击“新闻资讯”就会进入栏目页面,但是现在没栏目页,那就乱啦~
是的,可是我们又不可用把这个“当前位置”去掉,怎么办呢?对!就是只读出来文字,不要链接。
这时候又需要修改dedecms本身的代码了,我们之所以可以用这些标签,就是dedecms本身写好的,这些写好的代码不能满足我们,所以我们要改。这里要修改的文件是:
includearc.partview.class.php
includearc.archives.class.php
includearc.listview.class.php
三个文件里面都有这样一句话:Fields['position'] = $this->TypeLink->GetPositionLink(true);把他们都改成Fields['position'] = $this->TypeLink->GetPositionLink(false);明白了吧?改成falsh就是不读取链接了,虽然我们不知道dedecms在什么地方判断了是否读取链接,但是我们只要知道修改了这里就可以只读文字,这也就够了!需要深入研究或有兴趣或有时间的话,当然也可以深究一下~
==========================
删除当前位置里的超链接?
只保留文字
如:
主 页 > 企业简介 > 组织结构
修改方法一:
文件includearc.archives.class.php
文件includearc.listview.class.php
文件includearc.partview.class.php
把三个文件里面的这句
Fields['position'] = $this->TypeLink->GetPositionLink(true);
都改成
Fields['position'] = $this->TypeLink->GetPositionLink(false);
修改方法二:
{dede:field name='position' function="strip_tags(@me)"/}

或者{dede:field name='position' function="html2txt(@me)"/}