新聞中心
織夢DEDE發(fā)布文章時(含附件圖片)過大導致首頁布局混亂的解決方案
織夢dedesms是一款開源的企業(yè)站程序,很多做企業(yè)站,展示站的站長朋友們都會首選dedecms,這款程序前臺和后臺開發(fā)的都是比較完美的,功能也很齊全,今天小編遇到了一個奇葩的問題,一位站長朋友就是用這款dedecms建站的,他的站點主要是用來發(fā)布文章,做宣傳的。但是由于文章里含有很多附件或者比較大的圖片,在后臺發(fā)布更新后,當在網站前臺刷新后看到整個首頁的布局都混亂了,由于個人解決不了,他來咨詢小編,小編以前遇到過了因此已經知道了解決的方法,一般在網站發(fā)布一篇文章含有大的圖片的時候,圖片的寬度和高度就會超過了內容區(qū)域大小,圖片就會把表格撐的很大,頁面布局當然會亂了。小編今天把這個設置的方法記錄下來吧以后也許還是會有站長遇到相同的問題的。 第一步:找到include/arc.archives.class.php 文件并用一款編輯軟件打開。 首先找到以下代碼: //設置全局環(huán)境變量 $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","<imgalt=\"".$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打開模板文件然后在最下面添加以下代碼: <script language='javascript'> function ImgReSize(e) { if(e.width>670) // 670可根據你文章的內容區(qū)域大小,可調整 { e.width=670; // 等同上面你設的那個數值 e.style.width=""; } if(e.height>10) { e.style.height=""; } } </script> 這段代碼主要是修改網頁的寬度的,以上有個數字是670就是控制寬度大小的參數,一般寬度修改后高度就會自動縮小的了。以上兩個步驟就是完美解決由于圖片大導致網站格式混亂的方案。當然如果是前臺高手也是可以用CSS樣式來調試的。但是小編還要提醒一句,CSS對每個不同的瀏覽器都存在兼容性的問題,舉個例子對IE瀏覽器就是不兼容的哦。 無憂主機相關文章推薦閱讀: DEDECMS去掉管理員后臺廣告界面方法 DEDECMS程序網站如何添加GOOGLE地圖 如何修改DEDECMS網站程序后臺首頁頭部LOGO圖片 DEDECMS模板調用文件出錯導致首頁白屏、頁面混亂解決方案總結篇
本文地址:http://m.love62.cn/dedecms/14725.html