在做移動(dòng)站時(shí)時(shí)常會(huì)遇到一些小問(wèn)題比較偏門(mén)的,有時(shí)在網(wǎng)上找答案又找不到,就比如說(shuō)移動(dòng)端網(wǎng)站內(nèi)容圖片顯示不全,不顯示等問(wèn)題,公司也是在網(wǎng)站找了一大推的資料再加上自己的實(shí)踐操作才得出最好的解決方案。
?
一、移動(dòng)端內(nèi)容圖片屬性
?
首頁(yè)要搞清楚的是移動(dòng)端網(wǎng)站的內(nèi)容里面的圖片是同步PC端,也就是說(shuō),我們?cè)赑C端寫(xiě)文章上傳的圖片時(shí),我們發(fā)現(xiàn)PC端的圖片是有一個(gè)圖片高、寬的屬性的,而這個(gè)屬性由于為適應(yīng)PC端瀏覽,設(shè)置的較大,導(dǎo)致在手機(jī)端看時(shí),移動(dòng)端的圖片顯示不全。
這是由于圖片的高、寬尺寸屬性控制了圖片所以才導(dǎo)致移動(dòng)端顯示不全。
二、解決問(wèn)題思路
?
既然是圖片屬性問(wèn)題,那就可以把移動(dòng)端的圖片高、寬屬性去掉,這樣就可以讓圖片在手機(jī)端自適應(yīng)了,但是問(wèn)題來(lái)了,如果一張圖片一張圖去去修改肯定很麻煩,而且由于PC端上傳圖片時(shí)每圖片的尺寸都不同,所以又不能直接用“批量維護(hù)”功能里的“數(shù)據(jù)庫(kù)內(nèi)容替換”,最主要的是移動(dòng)端與PC端內(nèi)容數(shù)據(jù)是同步的,如果在移動(dòng)端內(nèi)容發(fā)布里面把圖片屬性去掉,那PC端的圖片屬性也沒(méi)有了,就會(huì)導(dǎo)致沖突。
?
所以需要用樣式來(lái)控制移動(dòng)端圖片,由于樣式兩個(gè)站是獨(dú)立的。
?
三、解決方法
?
經(jīng)過(guò)公司各個(gè)方法的多次實(shí)驗(yàn),認(rèn)為以下方法是最好的也是最簡(jiǎn)單的:
?
打開(kāi)空間include這個(gè)文件夾,找到 arc.archives.class.php 文件,查找代碼:
?
找到 “//設(shè)置全局環(huán)境變量”如下圖代碼:
將以上全部替換成:
為了方便大家復(fù)制我將它寫(xiě)下來(lái):
?
//設(shè)置全局環(huán)境變量
? ? ? ? ? ? $this->Fields["typename"] = $this->TypeLink->TypeInfos["typename"];
? ? ? ? ? ? @SetSysEnv($this->Fields["typeid"],$this->Fields["typename"],$this->Fields["id"],$this->Fields["title"],"archives");
//去掉img的width和height
$this->Fields["body"] = preg_replace("/style=(.*)"/","",$this->Fields["body"]);
? ? ? ? }
?
四、問(wèn)題已解決,后臺(tái)生成
?
好了,修改好后直接到移動(dòng)端后臺(tái)生成所有文章,刷新文章頁(yè)面,就可以看到圖片自適應(yīng)了移動(dòng)端設(shè)備尺寸,而PC端的圖片屬性沒(méi)變。
?
《看了這篇文章的人還看了》