html页面创建listview,DEDE更新栏目HTML取消生成list_x_1.html,用index.html代替第一页

dedecms 现在更新栏目HTML后生成的 index.html 与

list_x_1.html内容相同重复,在seo来说是造成重复内容或URL规范化的问题,列表页首页和第一页重复,不利于seo。

dede列表首页与列表第一页内容完全一样

,DEDE列表页分页如何取消生成第一页,第一页用index.html默认页代替,即让列表第一页为index.html,以后为list_x_2.html list_x_3.html ... ,没有list_x_1.html这一页,更有利于搜索引擎收录

如果后台栏目处选择链接到默认页,那么生成的列表里面就会出现 index.html 和 list_栏目ID_1.html

这样的两个相同文件。

打开 \include\arc.listview.class.php文件我们看到第347行代码:

//如果列表启用封面文件,复制这个文件第一页

if($this->TypeLink->TypeInfos['isdefault']==1

&& $this->TypeLink->TypeInfos['ispart']==0)

{

$onlyrule =

$this->GetMakeFileRule($this->Fields['id'],"list",$this->Fields['typedir'],'',$this->Fields['namerule2']);

$onlyrule = str_replace("{page}","1",$onlyrule);

$list_1 = $this->GetTruePath().$onlyrule;

$murl =

MfTypedir($this->Fields['typedir']).'/'.$this->Fields['defaultname'];

$indexname = $this->GetTruePath().$murl;

copy($list_1,$indexname);

}

代码的意思是如果启用链接到默认页,那么就会复制列表第一页。也就是说不能直接生成 index.html,而必须在生成

list_栏目ID_1.html,的前提下才能生成 index.html。

所以我们直接让生成的列表页变成生成的第一页默认文件名就为

index.html,第二页为list_栏目ID_2.html,第三页为list_栏目ID_3.html ...

接下来我们开始进行修改。

如果简单地不需要list_x_1.html

打开:\include\arc.listview.class.php

搜索 copy($list_1,$indexname); 在下面添加 unlink($list_1);

直接在生成index.html后删除掉list_x_1.html文件。

如果想直接控制不生成list_x_1.html,用index.html替换:

打开:\include\arc.listview.class.php

将第322行的 $makeFile = str_replace("{page}", $this->PageNo,

$makeFile);

改成:

if($this->PageNo == 1)

{//如果为第一页

$makeFile =

MfTypedir($this->Fields['typedir'])."/index.html";

}

else

{//如果为其他页

$makeFile = str_replace("{page}",

$this->PageNo, $makeFile);

}

注释掉

if($startpage==1){

.....

}

重新生成一个新栏目,以上两种修改都能只生成index.html,而不再有list_x_1.html

相关阅读:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值