程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> dedeCMS內頁限制圖片顯示大小的修改方法

dedeCMS內頁限制圖片顯示大小的修改方法

編輯:PHP綜合

DEDECMS內容頁圖片過大,我們又不希望它不按比例的縮小,因為如果縮小不按比例,圖片就會變形,所以我們需要找到一種等比例縮放圖片的方法。
第一步:打開include/arc.archives.class.php
找到:

//設置全局環境變量
$this->Fields['typename'] = $this->TypeLink->TypeInfos['typename'];@SetSysEnv($this->Fields['typeid'],$this->Fields['typename'],$this->Fields['id'],$this->Fields['title'],'archives');

在下面加入代碼: //替換圖片Alt為文檔標題
$this->Fields['body'] = str_ireplace(array('alt=""','alt=\'\''),'',$this->Fields['body']);$this->Fields['body'] = preg_replace("@ [\s]{0,}alt[\s]{0,}=[\"'\s]{0,}[\s\S]{0,}[\"'\s]@isU"," ",$this->Fields['body']);$this->Fields['body'] = str_ireplace("<img " ,"<img alt=\"".$this->Fields['title']."\"",$this->Fields['body']);
//img標簽中加入超寬縮小JS調用代碼
$suolue='onload="javascript:ImgReSize(this)"';$this->Fields['body'] = str_ireplace("<img " ,"<img ".$suolue." ",$this->Fields['body']);//屏蔽height屬性$this->Fields['body'] = preg_replace('/<img(.+?)height=(.+?) (.+?)>/i',"<img$1$3>",$this->Fields['body']);

第二步:打開你前台文章頁模版,默認的是:/templets/default/article_article.htm
加入如下代碼。那個600的數值,意思是當圖片超過這個數值,自動將圖片縮小,寬度縮小為600,高度自動按比例縮小,這樣不會變形。 <script language='javascript'>function ImgReSize(e){  if(e.width>600) //600可根據你文章的內容區域大小,可調整  {    e.width=600;   //等同上面你設的那個數值    e.style.width="";  }  if(e.height>10)  {    e.style.height="";  }}</script>

到此,就全部修改好了,內容頁圖片太大導致布局混亂問題就解決了

*
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved