織夢DedeCMS5.6網站文章頁點擊圖片進入下一頁最后一頁進入下一篇文章的方法:
我們首先按照下面的方法修改:
修改 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=1) { $body=preg_replace("/& lt;(img|IMG)(.*)(src|SRC)=[\"|'| ]{0,}((.*)>)/isU","點擊圖片,進入下一頁<br /><a href='".$this->NameFirst."_".$lPage.".".$this->ShortName."'>"."\${0}"."</a>",$body); } else { $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'] = "下一篇:<a href='$mlink'>{$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']; }
但是dedecms 5.6版本修改了以后可以用,但是老是彈出圖片再進入下一張圖片,后來研究了一下,發現之所以會彈出圖片 是因為圖片在上傳還有采集的時候主動加入了圖片新窗口打開的連接!
后來修改了下\include\FCKeditor\editor\dialog\dede_image.php 經過測試,完全沒有問題,而且即使不使用點擊進人下一頁的功能,修改后文章頁的圖片點擊也不會有連接!不會再彈出煩人的圖片窗口了!
方法就是打開\include\FCKeditor\editor\dialog\dede_image.php
查找:
onclick=\"window.open('$urlValue')\"
找到就刪除掉!有3個的!仔細看看!
再查找
<?php echo $urlValue?>
找到就刪除掉啦!
但是這里需要注意的是以前生成的文章還沒有方法一次去除點圖片彈出圖片的!
要去除只有到后台 編輯文章 源碼查看 去除IMG里面帶有onclick= 的那條連接的代碼刪除掉才可以。