服务器之家:专注于服务器技术及软件下载分享
分类导航

DEDECMS|帝国CMS|Discuz|PHPCMS|Wordpress|ZBLOG|ECSHOP|

服务器之家 - 建站程序 - DEDECMS - dedecms 5.7 实现点击图片到下一页

dedecms 5.7 实现点击图片到下一页

2019-06-10 19:47脚本之家服务器之家 DEDECMS

这篇文章主要介绍了dedecms 5.7 实现点击图片到下一页的方法和相关修改步骤,有需要的小伙伴可以参考下

修改/include/arc.archives.class.php文件

1、查找 “解析模板,对内容里的变动进行赋值” 在这段话上面/**前面添加以下代码。

PHP Code复制内容到剪贴板
  1. function ClickPicNext($ismake=1,$aid,$body)   
  2. {   
  3. global $cfg_rewrite;   
  4. if($this->NowPage!=$this->TotalPage)   
  5. {   
  6. $lPage=$this->NowPage+1;   
  7. if($ismake=0)   
  8. {   
  9. $body=preg_replace("/<(img|IMG)(.*)(src|SRC)=[\"|'| ]{0,}((.*)>)/isU","点击图片,进入下一页<br/><a href='".$this->NameFirst."_".$lPage.".".$this->ShortName."'>"."\${0}"."</a>",$body);   
  10. }   
  11. else  
  12. {   
  13. $PageList="<a href='".$this->NameFirst."_".$lPage.".".$this->ShortName."'>"."\${0}"."</a>";   
  14. if($cfg_rewrite == 'Y') 
  15.  
  16. $PageList = str_replace(".php?aid=","-",$PageList);  
  17. $PageList = preg_replace("/&pageno=(\d+)/i",'-\\1.html',$PageList);  
  18.  
  19. $body=preg_replace("/<(img|IMG)(.*)(src|SRC)=[\"|'| ]{0,}((.*)>)/isU",$PageList,$body);   
  20. }   
  21. }   
  22. else  
  23. {   
  24. $body=preg_replace("/<(img|IMG)(.*)(src|SRC)=[\"|'| ]{0,}((.*)>)/isU",$this->GetPreNext('imgnext'),$body);   
  25. }   
  26. return $body;   
  27. }   

2、查找“$this->Fields[$this->SplitPageField] = $this->SplitFields[$pageNo - 1];”,在这段代码下添加以下代码:

PHP Code复制内容到剪贴板
  1. if($ClickPicNext){   
  2. $this->Fields[$this->SplitPageField]=$this->Fields[$this->SplitPageField];   
  3. }else{   
  4. $this->Fields[$this->SplitPageField]=$this->ClickPicNext($ismake,$this->Fields['id'],$this->Fields[$this->SplitPageField]);   
  5. }   
  6.   

3、查找“$this->PreNext['next'] = "<a href='$mlink'>下一组</a> ";  ”在这段代码下添加以下代码:

PHP Code复制内容到剪贴板
  1. $this->PreNext['imgnext'] ="<a href='$mlink'>"."\${0}"."</a>";   

4、查找“$this->PreNext['next'] = “下一篇:没有了 “;”在这段代码下添加以下代码:

PHP Code复制内容到剪贴板
  1. $this->PreNext['imgnext'] ="\${0}";   

5、查找到以下代码:

PHP Code复制内容到剪贴板
  1. else if($gtype=='next')   
  2.         {   
  3.             $rs =  $this->PreNext['next'];   
  4.         }   

在其下面添加以下代码:

PHP Code复制内容到剪贴板
  1. else if($gtype=='imgnext')   
  2. {   
  3. $rs = $this->PreNext['imgnext'];   
  4. }  


{dede:field name='imgurls' alt='图片输出区'}[field:pagestyle runphp='yes'] @me= (@me==3 ? '<li>' : '');[/field:pagestyle]
<img src='[field:imgsrc/]' [field:imgwidth /] alt='[field:title /]' border='0' />
{/dede:field}

延伸 · 阅读

精彩推荐