首页 > CMS > 织梦DEDE > 正文

织梦dedecms做图片站实现图片进下一页方法

2024-07-12 08:41:42
字体:
来源:转载
供稿:网友

现在有很多朋友利用dedecms制作图片站,这样我们对图片进行分页时希望点击图片进行下一张图片浏览了,下面我们一起来看处理方法.

方法一

用dw打开根目录include/arc.archives.class.php 文件

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

  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. //静态页 
  14. $PageList="<a href='".$this->NameFirst."_".$lPage.".".$this->ShortName."'>"."${0}"."</a>";  
  15. //动态页 
  16. //$PageList="<a href='view.php?aid=$aid&pageno=$lPage'>"."${0}"."</a>";  
  17. if($cfg_rewrite == 'Y')  
  18. {  
  19. $PageList = str_replace(".php?aid=","-",$PageList);  
  20. $PageList = preg_replace("/&pageno=(d+)/i",'-/1.html',$PageList);  
  21. }  
  22. $body=preg_replace("/<(img|IMG)(.*)(src|SRC)=["|'| ]{0,}((.*)>)/isU",$PageList,$body);  
  23. }  
  24. }  
  25. else  
  26. {  
  27. $body=preg_replace("/<(img|IMG)(.*)(src|SRC)=["|'| ]{0,}((.*)>)/isU",$this->GetPreNext('imgnext'),$body);  
  28. }  
  29. return $body;  

2.查找$this->Fields[$this->SplitPageField] = $this->SplitFields[$pageNo - 1];在其下面添加如下代码:

  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. }  

3.查找$this->PreNext['next'] = "下一篇:{$nextRow['title']}</a> ";在其下面添加如下代码:

$this->PreNext['imgnext'] ="<a href='$mlink'>"."${0}"."</a>";

4.查找$this->PreNext['next'] = "下一篇:没有了 ";在下面添加如下代码:

$this->PreNext['imgnext'] ="${0}";

5.查找如下代码:

  1. else if($gtype=='next')  
  2.         {  
  3.             $rs =  $this->PreNext['next'];  
  4.  } 

在下面添加如下代码:

  1. else if($gtype=='imgnext')                    
  2. {    
  3. $rs =  $this->PreNext['imgnext'];      

至此就可以实现点击图片进入下一页了.

方法二

1、使用UltraEdite文本编辑器或者Dreamweaver打开include/arc.archives.class.php文件,注意,请不要使用记事本修改!

2、查找“//解析网站模板,对内容里的变动进行赋值”在这段话上面添加以下代码,这段代码的作用是定义一个函数,替换图片为链接:

  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)=["|'|>)/isU","点击图片,进入下一页<br><a>NameFirst."_".$lPage.".".$this->ShortName."" data_ue_src="".$this->NameFirst."_".$lPage.".".$this->ShortName."">"."${0}"."</a>",$body);}else{//静态页$PageList="<a>NameFirst."_".$lPage.".".$this->ShortName."" data_ue_src="".$this->NameFirst."_".$lPage.".".$this->ShortName."">"."${0}"."</a>";//动态页//$PageList="<a href="view.php?aid=$aid&pageno=$lPage" data_ue_src="view.php?aid=$aid&pageno=$lPage">"."${0}"."</a>";if($cfg_rewrite == 'Y'){$PageList = str_replace(".php?aid=","-",$PageList);$PageList = preg_replace("/&pageno=(d+)/i",'-/1.html',$PageList);}$body=preg_replace("/<(img|img)(.*)(src|src)=["|'|>)/isU",$PageList,$body);}}else{$body=preg_replace("/<(img|img)(.*)(src|src)=["|'|>)/isU",$this->GetPreNext('imgnext'),$body);}return $body;}<!--(img|img)(.*)(src|src)=["|'|--><!--(img|img)(.*)(src|src)=["|'|--><!--(img|img)(.*)(src|src)=["|'|--><!--(img|img)(.*)(src|src)=["|'|--><!--(img|img)(.*)(src|src)=["|'|--><!--(img|img)(.*)(src|src)=["|'|--> 

3、查找$this->Fields[$this->SplitPageField] = $this->SplitFields[$pageNo - 1]; 在其下面添加如下代码,这段代码的含义是对文章中是否有图片进行判断,有就图片链接转为点击链接到下一页,代码如下:

  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]);  

4、保存include/arc.archives.class.php文件,上传到对应的目录替换对应文件,重新生成文章即可.

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表