原文来自:https://www.zixuephp.com

织梦如何将列表页第一页去除(Dedecms)

织梦程序的文章列表页首页和列表页第一页是一样的,程序是直接把列表页第一页复制成首页的,这样就会出现两个相同的页面,我们这里介绍如何去除列表页第一页.

CMS站长网提醒大家,修改之前,请做好备份.

第一步:删除重复的类似list_1_1.html这个文件,打开 /include/arc.listview.class.php,搜索以下代码:

copy($list_1,$indexname);

在这行代码下面加上:

unlink($list_1);

这样就在生成html的时候自动将列表第一页删除.

第二步:将所有的分页第一页和首页链接指向首页,找到以下代码:

$tnamerule = ereg_replace('^(.*)/','',$tnamerule);

在下面加上:

  1. if($this->Fields['ispart']==0&$this->Fields['defaultname']=="index.htm")
  2. {
  3. $tnamerule1=$this->GetMakeFileRule($this->Fields['id'],"index",$this->Fields['typedir'],$this->Fields['defaultname'],$this->Fields['namerule2']);
  4. $tnamerule1=str_replace('index.htm','',$tnamerule1);
  5. $tnamerule2=ereg_replace('^(.*)/','index.htm',$tnamerule1);
  6. }elseif($this->Fields['ispart']==0&$this->Fields['defaultname']=="index.html")
  7. {
  8. $tnamerule1=$this->GetMakeFileRule($this->Fields['id'],"index",$this->Fields['typedir'],$this->Fields['defaultname'],$this->Fields['namerule2']);
  9. $tnamerule1=str_replace('index.html','',$tnamerule1);
  10. $tnamerule2=ereg_replace('^(.*)/','index.html',$tnamerule1);
  11. }
  12. else
  13. {
  14. $tnamerule1=$this->GetMakeFileRule($this->Fields['id'],"index",$this->Fields['typedir'],$this->Fields['defaultname'],$this->Fields['namerule2']);
  15. $tnamerule2=ereg_replace('^(.*)/','',$tnamerule1);
  16. }

找到【 //获得上一页和主页的链接 】和【 //下一页,未页的链接 】,将中间的代码替换为以下代码:

  1. if($this->PageNo!=1)
  2. {
  3. if($prepagenum==1)
  4. {
  5. $prepage.="<li><ahref='".$tnamerule1."'>上一页</a></li>\r\n";
  6. }
  7. else
  8. {
  9. $prepage.="<li><ahref='".str_replace("{page}",$prepagenum,$tnamerule)."'>上一页</a></li>\r\n";
  10. }
  11. $indexpage="<li><ahref='".str_replace("{page}",1,$tnamerule1)."'>首页</a></li>\r\n";
  12. }

找到【 //option链接】和【 //获得数字链接】,将中间的代码替换为以下代码:

  1. $optionlist='';
  2. $optionlen=strlen($totalpage);
  3. $optionlen=$optionlen*12+18;
  4. if($optionlen<36)$optionlen=36;
  5. if($optionlen>100)$optionlen=100;
  6. $optionlist="<li><selectname='sldd'style='width:{$optionlen}px'onchange='location.href=this.options[this.selectedIndex].value;'>\r\n";
  7. for($mjj=1;$mjj<=$totalpage;$mjj++)
  8. {
  9. if($mjj==$this->PageNo)
  10. {
  11. $optionlist.="<optionvalue='".str_replace("{page}",$mjj,$tnamerule)."'selected>$mjj</option>\r\n";
  12. }elseif($mjj==1)
  13. {
  14. $optionlist.="<optionvalue='".$tnamerule2."'>$mjj</option>\r\n";
  15. }
  16. else
  17. {
  18. $optionlist.="<optionvalue='".str_replace("{page}",$mjj,$tnamerule)."'>$mjj</option>\r\n";
  19. }
  20. }
  21. $optionlist.="</select></li>\r\n";

找到以下代码:

  1. if($j==$this->PageNo)
  2. {
  3. $listdd.="<liclass=\&;thisclass\&;><a>$j</a></li>\r\n";
  4. }

在下面加上以下代码:

  1. elseif($j==1){
  2. $listdd.="<li><ahref='".str_replace("{page}",$j,$tnamerule1)."'>".$j."</a></li>\r\n";
  3. }