好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

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

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

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

方法一

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

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

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

2.查找$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]);   }  

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

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

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

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

5.查找如下代码:

else   if ( $gtype == 'next' )           {                $rs  =   $this ->PreNext[ 'next' ];    } 

在下面添加如下代码:

else   if ( $gtype == 'imgnext' )                     {     $rs  =   $this ->PreNext[ 'imgnext' ];       } 

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

方法二

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

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

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)=[" | '|>)/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]; 在其下面添加如下代码,这段代码的含义是对文章中是否有图片进行判断,有就图片链接转为点击链接到下一页,代码如下:

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

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

查看更多关于织梦dedecms做图片站实现图片进下一页方法 - DeD的详细内容...

  阅读:66次