WordPress 5.3 對(duì)圖片的使用和上傳后的處理進(jìn)行了一些增強(qiáng)。
將圖片上傳到WordPress時(shí),WordPress會(huì)自動(dòng)創(chuàng)建其他較小尺寸的圖片副本。這些不同的尺寸有些是WP默認(rèn)定義的,有些是主題或插件定義的。它們通常被用于不同地方的縮略圖輸出,或者用于核心(如果它們的縱橫比相同)自動(dòng)生成響應(yīng)圖像。
調(diào)整圖像大小非常耗費(fèi)資源。隨著時(shí)間的推移,圖片數(shù)量不斷增加,可能會(huì)容易導(dǎo)致請(qǐng)求失敗或內(nèi)存不足。WordPress 5.3包含多項(xiàng)增強(qiáng)功能,可幫助更多上傳成功,并在用戶未成功上傳時(shí)幫助他們進(jìn)行恢復(fù)。這些更改還使WordPress能夠生成兩個(gè)新的、更高分辨率的默認(rèn)大小,以幫助用戶圖像看起來更清晰。
創(chuàng)建縮略圖使保存圖像元數(shù)據(jù)
在5.3之前的版本中,WordPress將首先生成所有縮略圖尺寸大小,然后再將其存在的證據(jù)保存在元數(shù)據(jù)庫(kù)中。
這意味著,如果上傳中途失敗,則可能已經(jīng)生成了不同尺寸的圖片,但這不會(huì)反映在數(shù)據(jù)庫(kù)中。但用戶并不知道,只能一次次重新上傳,導(dǎo)致不斷生成更多縮略圖尺寸。
在5.3中,通過保存在數(shù)據(jù)庫(kù)中創(chuàng)建的每種尺寸的元數(shù)據(jù),來解決這個(gè)問題。這會(huì)導(dǎo)致更多數(shù)據(jù)會(huì)被寫入到數(shù)據(jù)庫(kù)中,但允許WordPress使用之前生成的縮略圖,并恢復(fù)失敗的上傳。
為了實(shí)現(xiàn)這個(gè)功能,WordPress 在WP_Image_Editor_GD和WP_Image_Editor_Imagick類中引入了一個(gè)新方法 make_subsize() 。它返回新的子尺寸圖像路徑和尺寸,然后添加到圖像的sizes元數(shù)據(jù)數(shù)組中。參見#40439。
其他變化:
- 新增
wp_get_missing_image_subsizes()和wp_update_image_subsizes()生成上傳后丟失或未創(chuàng)建的圖像子尺寸。 - 添加了一種顯示創(chuàng)建子尺寸時(shí)發(fā)生的錯(cuò)誤的方法。
- 新增
wp_create_image_subsizes(),會(huì)在圖片上傳后使用。它會(huì)在創(chuàng)建每個(gè)子尺寸后,立即保存/更新圖像元數(shù)據(jù)。
如果服務(wù)器在創(chuàng)建不同尺寸縮略圖的時(shí)候,出現(xiàn)資源不足(可怕的“ HTTP錯(cuò)誤”消息),則可以嘗試在上傳后完成圖像的后期處理。參見#47872。
“大圖像”增強(qiáng)功能
要了解大圖片處理的具體內(nèi)容,請(qǐng)看:WordPress 5.3 可對(duì)大圖片自動(dòng)縮放




