DedeCMS固然好,但是用久了一些细节的不完美就体现出来,比如余斗今天要讲的列表分页的url地址的问题。仔细观察Dede的栏目分页我们会发现,第一个分页会有三个地址,比如余斗的教程合集的栏目第一页三个地址为:
https://www.yudouyudou.com/jiaochengheji/index.html
https://www.yudouyudou.com/jiaochengheji/
https://www.yudouyudou.com/jiaochengheji/list_3_1.html
这三个地址不同但是内容完全一致,做seo的同学都知道,这样的地址特别容易造成权重分散,不利于优化,余斗今天就讲讲怎么把DedeCMS的列表分页标准化,余斗主要是把三个地址全部统一到https://www.yudouyudou.com/jiaochengheji/这个地址上来:
一、打开 \include\arc.listview.class.php这个文件,把代码:
$typedir= ereg_replace('{cmspath}',$GLOBALS['cfg_cmspath'],$this->Fields['typedir']);复制到“//获得上一页和主页的链接”这句话之前。
二、找到以下代码(在“ //获得上一页和主页的链接”之下就是):
if($this->PageNo != 1){
$prepage.="<li><a href='".str_replace("{page}",$prepagenum,$tnamerule)."'>上一页</a></li>\r\n";
$indexpage="<li><a href='".str_replace("{page}",1,$tnamerule)."'>首页</a></li>\r\n";
}
else
{
$indexpage="<li>首页</li>\r\n";
}
替换为:
if($this->PageNo != 1){
if($prepagenum==1)
{
$prepage.="<a href=\"".$typedir."/\">前一页</a>\r\n";
}
else
{
$prepage.="<a href=\"".str_replace("{page}",$prepagenum,$tnamerule)."\">前一页</a>\r\n";
}
$indexpage="<a href=\"".$typedir."/\">首页</a>\r\n";
}
三、找到以下代码(大概在1076行附近):
$listdd.="<li><a href='".str_replace("{page}",$j,$tnamerule)."'>".$j."</a></li>\r\n";替换为:
if($j==1){
$listdd.="<a href=\"".$typedir."/\">".$j."</a>\r\n";
}
else
{
$listdd.="<a href=\"".str_replace("{page}",$j,$tnamerule)."\">".$j."</a>\r\n";
}
完成后,后台重新生成栏目页,我么会发现,默认的栏目页第一页就变成了我们想要的标准格式了。此时,如果想完美实现两种不规范的地址跳转到规范化的网址,请点击:利用.htaccess文件实现网站栏目首页的301跳转。
资源均来自第三方,谨慎下载,前往第三方网站下载