自主控制WordPress的图片尺寸
你往WordPress上传一张图片的时候,它有可能会给你在后台生成7、8张不同尺寸的图片,比如这样:

其实这对于大部分人来说,都是一个蛮好的功能。比如小白可能会把手机拍的几个MB的图片直接上传上来,那对于web显示可能就太大了。有个自动缩略就很合适了,既能节省带宽,页面加载又快。
但我偏偏是一个喜欢“手动档”的人,我想自己来控制这些尺寸,上传前就会对图片做适当的压缩。这样服务器里也就不用存储这多张图片了。
问了GPT,以下方法对我是有效的:
- WordPress后台 → 设置 → 媒体,把缩略图/中等/大的宽高都设为 0,保存。//这里能少3个图片
- 在WP主题的
functions.php里,加入以下代码:
|
1 2 3 4 5 6 7 8 |
// 移除不必要的图片尺寸 add_filter('big_image_size_threshold', '__return_false'); add_filter('intermediate_image_sizes_advanced', function ($sizes) { foreach (['medium_large', '1536x1536', '2048x2048'] as $s) { unset($sizes[$s]); } return $sizes; }); |
完事,现在你传什么,服务器就只存什么了。
PS:查资料的过程中,还了解到现在浏览器有个srcset响应式图片,大致是,HTML的img标签里,除了正常的src以外,还会提供一个srcset,然后浏览器就可以根据当前屏幕的尺寸来决定具体请求那个资源了,下面是个例子,听起来是挺不错的。
|
1 2 3 4 5 6 7 |
<img src="IMG_2184-768x384.jpeg" srcset=" IMG_2184-300x150.jpeg 300w, IMG_2184-768x384.jpeg 768w, IMG_2184.jpeg 1214w" sizes="(max-width: 768px) 100vw, 768px" /> |
折腾自己的blog,而不是直接用平台,就是有这些乐趣(如果你也觉得这是乐趣的话),哈哈~