WordPress会生成3个以上的缩略图或图像子大小,因为WordPress中实际有3个以上的标准/核心图像大小。此外,主题和插件还可以注册自定义图像大小。:)
6+1标准/核心图像大小默认值(4):Thumbnail, Medium, Large and Medium Large (medium_large
), 但只有前三个可以在wp-admin
→ 设置→ 媒体。
默认附加/自定义尺寸(2):1536x1536
and 2048x2048
通过内部/自动添加_wp_add_additional_image_sizes()
其中使用add_image_size()
.
缩放()-scaled
在图像文件名中:可用于高分辨率和非PNG图像,其中WordPress复制原始(大)图像并将其缩小到阈值大小,默认为2560像素。
例如,如果我上传一幅4K图像,它最多会再生成7个副本+原始副本(150、300、768、1024、1536、20148,缩放,原始)。
因此,在这种情况下(但请注意,我认为您键入了“20148”,应该是2048),原始图像的7个副本很可能是:
150-缩略图300-中等大小768-中等大小1024-大大小1536-核心自定义图像大小(1536x1536
)2048-核心自定义图像大小(2048x2048
)
缩放-核心缩放,如果您想确定,可以使用get_intermediate_image_sizes()
检查站点上所有注册的图像大小。您还可以使用wp_get_additional_image_sizes()
仅获取附加/自定义尺寸(包括1536x1536
和2048x2048
由WordPress添加)。事实上,您可以使用wp_get_attachment_metadata()
(参见最下方的示例)检查图像附件的可用大小。
非核心/其他自定义图像大小的主题和插件可以使用相同的大小add_image_size()
注册自定义图像大小,因此如果您注意到比核心图像大小更多的图像大小(参见上文),那么这些额外大小可能是由站点上的活动主题或插件添加的。例如。
十九种用途set_post_thumbnail_size()
设置custom Featured Image size 你可以在functions.php
.
WooCommerce使用add_image_size()
为产品缩略图注册自定义图像大小(woocommerce_thumbnail
) 你可以在includes/class-woocommerce.php
.
因此,对于此类自定义图像大小,您可以在主题或插件文件中搜索添加图像大小或设置后期缩略图大小。
如何禁止为6个标准/核心尺寸和通过添加的所有其他尺寸生成特定图像尺寸add_image_size()
, e、 g。medium_large
和2048x2048
, 您可以使用intermediate_image_sizes_advanced
hook:
add_filter( \'intermediate_image_sizes_advanced\', function ( $sizes ) {
// Disable the 2048x2048 size.
unset( $sizes[\'2048x2048\'] );
// Or maybe allow specific sizes only:
/*
$allowed = [ \'thumbnail\', \'medium\', \'large\' ];
foreach ( $sizes as $name => $size ) {
if ( ! in_array( $name, $allowed ) ) {
unset( $sizes[ $name ] );
}
}
*/
return $sizes;
} );
对于核心缩放大小,您需要使用big_image_size_threshold
hook:// Disable the threshold.
add_filter( \'big_image_size_threshold\', \'__return_false\' );
// Or maybe increase it:
/*
add_filter( \'big_image_size_threshold\', function () {
return 3032;
} );
*/
无论哪种方式,都要确保你知道自己在做什么,并正确地做。核心规模和wp_get_attachment_metadata()
(我在之前的修订中提到了这一点,所以我认为应该在这里包括它。)对于具有核心缩放图像的图像附件,主width
, height
和file
如下所示,项目将指向缩放后的图像,而不是原始图像。但是,原始文件的名称在中可用original_image
.
// Query an attachment with a core Scaled image.
var_dump( wp_get_attachment_metadata( 123 ) );
/* Sample output:
array(6) {
["width"]=>
int(2560)
["height"]=>
int(1440)
["file"]=>
string(25) "2020/07/hi-res-scaled.jpg"
["sizes"]=>
array(7) {
["medium"]=>
array(4) {
["file"]=>
string(18) "hi-res-300x169.jpg"
["width"]=>
int(300)
["height"]=>
int(169)
["mime-type"]=>
string(10) "image/jpeg"
}
["large"]=>
...
["thumbnail"]=>
...
["medium_large"]=>
...
["1536x1536"]=>
...
["2048x2048"]=>
...
}
["image_meta"]=>
array(12) {
...
}
["original_image"]=>
string(10) "hi-res.jpg"
}
*/
// Query an attachment without a core Scaled image.
var_dump( wp_get_attachment_metadata( 456 ) );
/* Sample output: (no original_image)
array(5) {
["width"]=>
int(1024)
["height"]=>
int(768)
["file"]=>
string(21) "2020/07/foo-image.jpg"
["sizes"]=>
array(3) {
["medium"]=>
array(4) {
["file"]=>
string(21) "foo-image-300x225.jpg"
["width"]=>
int(300)
["height"]=>
int(225)
["mime-type"]=>
string(10) "image/jpeg"
}
["thumbnail"]=>
...
["medium_large"]=>
...
}
["image_meta"]=>
array(12) {
...
}
}
*/