/ 中存储网

将栏目列表分页链接第一页地址改为index的方法

2015-12-09 22:39:12 来源:中存储网

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