dedecms列表分页的优化

发布时间:2020-08-19编辑:脚本学堂
dedecms列表分页的优化

dedecms默认的列表分页样式是“首页 上一页1 2 ……下一页,末页”中间页面url样式:
首页:http://www.meidizx.com/meibaizhen
中间页面:http://www.meidizx.com/meibaizhen/list_33_11.html
第一页:http://www.meidizx.com/meibaizhen/list_33_1.html
 
对于seo来说似乎是不太友好,因为一个第一页跟首页同一页面出现了两个url,这样是不太友好的。
如何实现统一的url呢?这就要用到常说的dedecms列别分页优化,本文整理了dedecms列表分页优化得方法,希望能对大家有所帮助。

列表分页更改后效果
更改后首页对应URL地址:http://www.meidizx.com/meibaizhen
第一页对应url地址:http://www.meidizx.com/meibaizhen
具体修改方法如下:
 1.找到includearc.listview.class.php (资讯列表页)
 2.找到includearc.sglistview.class.php (分类信息列表页)// 如果没有采用分类信息,这个就可以不改。
 找到两个文件,将

复制代码 代码如下:
$typedir= ereg_replace(‘{cmspath}’,$GLOBALS['cfg_cmspath'],$this->Fields['typedir']);
 $title= ereg_replace(‘{cmspath}’,$GLOBALS['cfg_cmspath'],$this->Fields['title']);

这段代码添加到”//获得上一页和主页的链接”前面;
紧接着在两个文件中分别找到下面几行代码(就在”//获得上一页和主页的链接”下面)

复制代码 代码如下:
if($this->PageNo != 1)
 {
 $prepage.=”<li><a href=’”.str_replace(“{page}”,$prepagenum,$tnamerule).”‘>上一页</a></li>rn”;
 $indexpage=”<li><a href=’”.str_replace(“{page}”,1,$tnamerule).”‘>首页</a></li>rn”;
 }

改成:

复制代码 代码如下:
if($this->PageNo != 1)
 {
 if($prepagenum==1)
 {
 $prepage.=”<li><a href=”".$typedir.”/”>上一页</a></li>rn”;
 }
 else
 {
 $prepage.=”<li><a href=”".str_replace(“{page}”,$prepagenum,$tnamerule).””>上一页</a></li>rn”;
 }
 $indexpage=”<li><a href=”".$typedir.”/”>$title</a></li>rn”;
 } //$title 这个可以换成首页这种固定的文字

最后找到:

复制代码 代码如下:
$listdd.=”<li><a href=’”.str_replace(“{page}”,$j,$tnamerule).”‘>”.$j.”</a></li>rn”;

改成:

复制代码 代码如下:
if($j==1)
 {
 $listdd.=”<li><a href=”".$typedir.”/”>”.$j.”</a></li>rn”;
 }
 else
 {
 $listdd.=”<li><a href=”".str_replace
 
(“{page}”,$j,$tnamerule).””>”.$j.”</a></li>rn”;
 }

到此整个修改就完成了,重新生成下列表页,然后就可以看到如图上的效果。
以上代码主要解决了织梦列表页链接不同url指向同一页面的问题,织梦5.6 utf8下测试正确无误。
注:由于编辑器原因,如果复制代码过程中出现中文符号如“,请统统改成英文符号”,不然修改不成功。
如果程序是UTF8,请保存的时候也选择utf8格式。