织梦二级栏目title中/(斜杠)修改为_下划线方法_织梦CMS教程

织梦二级栏目标题title中"/"修改为"_"

找到\include\arc.listview.class.php搜索如下代码,替换其中的" / "为"_"

$this->Fields['title'] = preg_replace("/[<>]/", " / ", $this->TypeLink->GetPositionLink(false));

$this->Fields['title']=preg_replace("/[<>]/","_",$this->TypeLink->GetPositionLink(false));

交换dedecms顶级栏目和二级栏目顺序

打开\include \typelink.class.php搜索如下代码修改为后者

$this->valuePositionName = $tinfos['typename'].$this->SplitSymbol.$this->valuePositionName;

$this->valuePositionName = $this->valuePositionName.$this->SplitSymbol.$tinfos['typename'];


不过这样操作时,会发现标题与标题之间加了一个空格。

怎么解决织梦DedeCMS两个标题之间有空格这个问题呢?

织梦DedeCMS两个标题间空格,首先标题是由标签调用的,那出现空格就是在标签的定义文件中出了问题。对于dede:arclist这个标签来说,定义的标签文件是include\taglib文件夹下的arclist.lib.php文件,找到如下代码:

if($pagesize > 0)

{

if($GLOBALS['autoindex'] <= $pagesize)

{

$artlist .= $dtp2->GetResult()."\r\n";

} else {

$artlist .= “";

}

} else {

$artlist .= $dtp2->GetResult()."\r\n";

}

可以看出,以上的代码就是去掉\r\n,这两个符号就是换行的意思。当两个标题放在一行的时候,就造成了多了空格了。不过这是一个权宜的解决办法,并且制作网站的时候也很少会用到把两个或者多个标题放在一行的情况,比较鸡肋。

 if($pagesize > 0)

{

if($GLOBALS['autoindex'] <= $pagesize)

{

$artlist .= $dtp2->GetResult()."";

} else {

$artlist .= “";

}

} else {

$artlist .= $dtp2->GetResult()."";

}