我們都知道WordPress為通過(guò)媒體庫(kù)上傳的所有圖片創(chuàng)建了大量副本。這些附加圖像會(huì)根據(jù)您的設(shè)置和其他因素生成各種尺寸的圖像。一般來(lái)說(shuō),這可能完全沒(méi)問(wèn)題,但是如果您在站點(diǎn)上使用大量圖片,但您的站點(diǎn)沒(méi)有使用所有尺寸的圖像,那多余的文件會(huì)占用您的磁盤(pán)空間。
因此,為幫助您節(jié)省資源,消除浪費(fèi)并保持運(yùn)行狀態(tài)盡可能輕巧,本文詳細(xì)說(shuō)明了禁用所有WordPress默認(rèn)(或自定義)自動(dòng)生成的圖像。
那么解決方案是什么?如何管理所有這些額外的圖片并節(jié)省磁盤(pán)空間?訣竅是了解如何禁用每個(gè)額外的圖像大小,因此您可以添加所需的代碼以禁用(或自定義)不需要的尺寸。以下是控制它們的神奇方法:
禁用縮略圖大小
禁用中等大小
禁用大尺寸
禁用中大尺寸
禁用2x中大尺寸
禁用2倍大尺寸
禁用縮放
禁用其他尺寸
注意:請(qǐng)勿禁用主題所需的任何圖像尺寸,否則主題將不能正常顯示布局!
一、禁用縮略圖大小
要禁用縮略圖尺寸圖像的生成,請(qǐng)?jiān)凇霸O(shè)置>媒體>圖像大小”下將“縮略圖大小”選項(xiàng)設(shè)置為“0”。設(shè)置為“0”將禁用此尺寸圖像的自動(dòng)生成。設(shè)置為任何其他值可自定義大小而不是禁用大小。在WordPress后臺(tái)的設(shè)置菜單下,默認(rèn)界面如下所示:

要禁用或自定義縮略圖大小,中等大小和大尺寸圖像,請(qǐng)?jiān)赪P管理區(qū)域中訪(fǎng)問(wèn)此界面。
輸入“0”(不帶引號(hào))以禁用任何/所有這些額外尺寸的圖像。
或者,如果您希望以代碼方式禁用縮略圖大小的圖像,則可以將以下代碼段添加到主題中functions.php:
function shapeSpace_disable_thumbnail_images($sizes) {
unset($sizes[‘thumbnail’]); // disable thumbnail size
return $sizes;
}
add_action(‘intermediate_image_sizes_advanced’, ‘shapeSpace_disable_thumbnail_images’);
提示:如以下某些技術(shù)所示,上述技術(shù)可用于禁用其他圖像尺寸。因此,您可以將一些禁用大小的代碼整合到一個(gè)代碼段中(如本文底部所示)。
二、禁用中等大小
要禁用中等尺寸圖像的生成,請(qǐng)?jiān)凇霸O(shè)置>媒體>圖像大小”下將“中等大小”選項(xiàng)設(shè)置為“0”。設(shè)置為“0”將禁用此尺寸圖像的自動(dòng)生成。設(shè)置為任何其他值可自定義大小而不是禁用大小。
或者,如果您希望通過(guò)編程方式禁用中型圖像,則可以將以下代碼段添加到主題中functions.php:
function shapeSpace_disable_medium_images($sizes) {
unset($sizes[‘medium’]); // disable medium size
return $sizes;
}
add_action(‘intermediate_image_sizes_advanced’, ‘shapeSpace_disable_medium_images’);
三、禁用大尺寸
要禁用大尺寸圖像的生成,請(qǐng)?jiān)凇霸O(shè)置>媒體>圖像大小”下將“大尺寸”選項(xiàng)設(shè)置為“0”。設(shè)置為“0”將禁用此尺寸圖像的自動(dòng)生成。設(shè)置為任何其他值可自定義大小而不是禁用大小。
或者,如果您希望以編程方式禁用大尺寸圖像,則可以將以下代碼段添加到主題中functions.php:
function shapeSpace_disable_large_images($sizes) {
unset($sizes[‘large’]); // disable large size
return $sizes;
}
add_action(‘intermediate_image_sizes_advanced’, ‘shapeSpace_disable_large_images’);
四、禁用中大尺寸
要禁用“中大”尺寸的圖像,請(qǐng)?jiān)谥黝}functions.php文件中添加以下代碼段:
function shapeSpace_disable_medium_large_images($sizes) {
unset($sizes[‘medium_large’]); // disable 768px size images
return $sizes;
}
add_filter(‘intermediate_image_sizes_advanced’, ‘shapeSpace_disable_medium_large_images’);
五、禁用2x中大尺寸
要禁用“2x中大”尺寸的圖像,請(qǐng)?jiān)谥黝}functions.php文件中添加以下代碼段:
function shapeSpace_disable_2x_medium_large_images($sizes) {
unset($sizes[‘1536×1536’]); // disable 2x medium-large size
return $sizes;
}
add_filter(‘intermediate_image_sizes_advanced’, ‘shapeSpace_disable_2x_medium_large_images’);
六、禁用2倍大尺寸
要禁用“ 2倍大”尺寸的圖像,請(qǐng)?jiān)谥黝}functions.php文件中添加以下代碼段:
function shapeSpace_disable_2x_large_images($sizes) {
unset($sizes[‘2048×2048’]); // disable 2x large size
return $sizes;
}
add_filter(‘intermediate_image_sizes_advanced’, ‘shapeSpace_disable_2x_large_images’);
七、禁用縮放
要禁用“縮放”圖像,請(qǐng)?jiān)谥黝}functions.php文件中添加以下代碼段:
add_filter(‘big_image_size_threshold’, ‘__return_false’);
八、禁用其他尺寸
對(duì)于通過(guò)set_post_thumbnail_size()和add_image_size() 生成的任何其他圖像,可以使用remove_image_size()。這是一個(gè)例子:
function shapeSpace_disable_other_images() {
remove_image_size(‘post-thumbnail’); // disable set_post_thumbnail_size()
remove_image_size(‘a(chǎn)nother-size’); // disable other add image sizes
}
add_action(‘init’, ‘shapeSpace_disable_other_images’);
關(guān)鍵是要知道要?jiǎng)h除的自定義圖像尺寸的名稱(chēng)/標(biāo)記。對(duì)于設(shè)定的文章縮略圖(即特色圖片),始終為post-thumbnail。對(duì)于通過(guò)添加圖像尺寸添加的其他圖像,名稱(chēng)將根據(jù)您的主題或插件而有所不同。因此進(jìn)行操作前,請(qǐng)首先檢查您的上傳目錄和/或主題功能文件,以確定正在生成的大小。有些主題會(huì)增加一堆額外的圖像尺寸,而有些則不會(huì),這取決于主題。
多合一代碼段
以上是針對(duì)不同需求單獨(dú)的代碼示例,這里有一個(gè)“多合一”代碼段,它將上述所有技術(shù)組合并簡(jiǎn)化為一個(gè)即插即用的代碼段:
// 禁用自動(dòng)生成的圖片尺寸
function shapeSpace_disable_image_sizes($sizes) {
unset($sizes[‘thumbnail’]); // disable thumbnail size
unset($sizes[‘medium’]); // disable medium size
unset($sizes[‘large’]); // disable large size
unset($sizes[‘medium_large’]); // disable medium-large size
unset($sizes[‘1536×1536’]); // disable 2x medium-large size
unset($sizes[‘2048×2048’]); // disable 2x large size
return $sizes;
}
add_action(‘intermediate_image_sizes_advanced’, ‘shapeSpace_disable_image_sizes’);
// 禁用縮放尺寸
add_filter(‘big_image_size_threshold’, ‘__return_false’);
// 禁用其他圖片尺寸
function shapeSpace_disable_other_image_sizes() {
remove_image_size(‘post-thumbnail’); // disable images added via set_post_thumbnail_size()
remove_image_size(‘a(chǎn)nother-size’); // disable any other added image sizes
}
add_action(‘init’, ‘shapeSpace_disable_other_image_sizes’);
該代碼段結(jié)合了禁用所有WordPress生成的圖像(僅保留原始上傳的圖像)所需的所有技術(shù)。唯一需要的編輯是針對(duì)最后一個(gè)函數(shù),其中“其他”圖像尺寸被禁用;您可能需要在其中編輯字段名another-size以便匹配其他自定義尺寸,或者如果沒(méi)有其他尺寸,只需注釋掉或刪除該行。
提示:除了WordPress產(chǎn)生的所有其他圖像外,您可能還希望控制或禁用WordPress提供的所有額外的響應(yīng)圖像功能。可以直接使用 Disable Responsive Images Complete 插件來(lái)進(jìn)行設(shè)置,非常簡(jiǎn)單。





