dedecms的栏目列表分页链接,仔细观察会发现,在栏目的首页会存在两个内容相同的2个不同url:
一个是在其他页面链接的栏目首页url是www.xxx.com/lanmu1/index.html
另一个是栏目的分页给的链接URL是:www.xxx.com/lanmu1/list_1_1.html
从SEO方面来说,是不太友好的,所以,本文就是针对这个问题,把两个URL统一成index.html
1,找到includearc.listview.class.php这个文件,将
$typedir= ereg_replace('{cmspath}',$GLOBALS['cfg_cmspath'],$this->Fields['typedir']);
这段代码添加到”//获得上一页和主页的链接”前面;
2,找到下面几行代码(就在”//获得上一页和主页的链接”下面)
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."/">首页</a></li>rn"; }
3.找到 $listdd.="<a href='".str_replace("{page}",$j,$tnamerule)."'>".$j."</a>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"; }
改完之后再去更新列表页试试看,首页、第一页 是不是都直接链接到栏目首页了。^_^
转载自零度科技:http://www.ldisp.com/a/dedecms-bug/2013/2455.shtml