生成的大小比原始图像大的原因是压缩的工作方式。
例如,如果上载的低质量图像大小为50kb,但WordPress的JPG质量设置为100,则缩略图的大小将大于原始图像,因为WordPress没有压缩缩略图。可以使用jpeg_quality
过滤器:
add_filter(\'jpeg_quality\', function($arg){ return 90; });
您可以减小该值(这也会降低质量)以节省更多空间。我不知道PNG文件有什么挂钩,但有一些插件可以为您手动压缩这些文件,例如
Compress PNG & JPG images 或
Compress PNG for WP.
如果您熟悉如何生成自己的响应图像,则可以手动生成自己的响应图像srcset
作品看看这个例子:
<img
src="<?php get_the_post_thumbnail_url( $post_id,\'thumbnail\' ); ?>"
srcset="
<?php the_post_thumbnail_url( \'medium\' ); ?> 700w,
<?php the_post_thumbnail_url( \'large\' );?> 1600w"
sizes="
(max-width:700px) 700px,
(min-width:701px) 1600px"
alt="<?php the_title(); ?>"
/>
这样,您可以根据主题完全控制图像及其行为。
此外,在响应性方面,您可能需要确保为内容定义了宽度,以便WordPress可以决定断点。这是由一个名为$content_width
:
if(!isset($content_width)) {
$content_width = 700;
}
可通过主题设置
functions.php
文件