[教學]解決升級WordPress 4.4 媒體庫、網站破圖問題(srcset)

新版WordPress 4.4 最近推出,有些使用者斷然的升級後發現網站居然破圖了!而且媒體庫破圖、網站也破圖,但是查看FTP,圖檔確實是存在耶?!事實上這問題國外也有發生,主要是因為WordPress 4.4版本支持RWD的圖片縮放,讓網站的圖片可以從媒體庫內的各尺寸抓出活用,但是並非每一個網站一開始都是採用RWD版型,可能是中途更換,那麼舊文章可能就造成破圖了。

另外,有些使用者會為了避免媒體庫裡面產生三種尺寸的圖片,會去把媒體庫自動裁切圖片設定為0,也因此造成另外兩種尺寸圖片不存在,但是WordPress4.4似乎是自動產生圖片連結,因此產生出的連結卻是圖片檔案不存在,因此也會造成網站破圖。基於以上種種原因,國內外都陸續出現哀號,也因此這樣,在WordPress官方網站討論區中有網友提出了解決方法。

想要解決WordPress 4.4 媒體庫、網站破圖的問題,可透過不用WordPress核心程式的方式就是利用hook、filter方法去跳出該設定。再次說明一下媒體庫(Media)網站版型(Theme)特色圖片(feature image)破圖的原因是因為WordPress 4.4支援RWD的媒體載入(Srcset),官方開發者一篇文章有說明關於此設定的部分「Responsive Images in WordPress 4.4」,透過一些WordPress新增的function可以去做到支援到HTML5的「Srcset」語法支援。

[教學]解決升級WordPress 4.4 媒體庫、網站破圖問題(srcset)

雖然WordPress搶先支援Srcset,支援srcset可以有效的在網站效能、圖片呈現上可以在RWD內完善表現,但對於網站不使用RWD或者是圖片缺檔案、使用圖床外掛(Hacklog Remote Attachment、upload to ftp)、使用外部圖床搭配媒體庫的使用者來說,卻是一大災難。依照官方討論區國外網友提供的語法,現階段可以解決破圖問題,只要將以下語法放置於functions.php或者是版型內適當位置,即可解決此問題。

如果您是SSL網站,可以參考這篇解決方法,記得確保網站亮綠燈即可。