dede点击文章中图片切换到下一页方法

在做网站的时候经常会遇到单击图片进入下一页的方法。今天小鱼儿博客园就拿dedecms5.7来举例说明:

修改 include/arc.archives.class.php 
首先.查找“//解析模板,对内容里的变动进行赋值”在这段话上面添加以下代码 : 
function ClickPicNext($ismake=1,$aid,&$body) 

global $cfg_rewrite; 
if($this->NowPage!=$this->TotalPage) 

$lPage=$this->NowPage+1; 
if($ismake=0) 

$body=preg_replace("/<(img|IMG)(.*)(src|SRC)=[/"|'| ]{0,}((.*)>)/isU","点击图片,进入下一页<br/><a href='".$this->NameFirst."_".$lPage.".".$this->ShortName."'>"."/${0}"."</a>",$body); 

else 


//静态页

$PageList="<a href='".$this->NameFirst."_".$lPage.".".$this->ShortName."'>"."/${0}"."</a>"; 

//动态页
//$PageList="<a href='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)=[/"|'| ]{0,}((.*)>)/isU",$PageList,$body); 



else 

$body=preg_replace("/<(img|IMG)(.*)(src|SRC)=[/"|'| ]{0,}((.*)>)/isU",$this->GetPreNext('imgnext'),$body); 

return $body; 

然后,查找$this->Fields[$this->SplitPageField] = $this->SplitFields[$pageNo - 1]; 在其下面添加 
if($ClickPicNext){ 
$this->Fields[$this->SplitPageField]=$this->Fields[$this->SplitPageField]; 
}else{ 
$this->Fields[$this->SplitPageField]=$this->ClickPicNext($ismake,$this->Fields['id'],$this->Fields[$this->SplitPageField]); 

再者,查找$this->PreNext['next'] = "下一篇:<a href='$mlink'>{$nextRow['title']}</a> ";在其下面添加 
$this->PreNext['imgnext'] ="<a href='$mlink'>"."/${0}"."</a>";
其次,查找$this->PreNext['next'] = "下一篇:没有了 ";在其下面添加 
$this->PreNext['imgnext'] ="/${0}";
最后.查找 
else if($gtype=='next') 

$rs = $this->PreNext['next']; 
}
在其下面添加 
else if($gtype=='imgnext') 

$rs = $this->PreNext['imgnext']; 

至此,dede5.7点击文章中图片切换到下一页方法,非常简单。

支付宝扫码打赏 微信扫码打赏

如果本文对你有帮助,欢迎打赏本站

喜欢 ()or分享
    匿名评论
  • 评论
人参与,条评论