WordPress图像后期处理失败,请将其缩小到2500像素并重新上传

今天给个网友做WordPress站点优化,结果发现 WordPress 媒体库图片上传的时候提示“图像后期处理失败。如果这是一张照片或较大图像,请将其缩小到2500像素并重新上传。”这也是缙哥哥使用WordPress 5.3.1第一次遇到这样的问题,先根据提示进行一步步排查!

WordPress图像后期处理失败,请将其缩小到2500像素并重新上传

WordPress图片上传失败错误提示

中文提示:图像后期处理失败。如果这是一张照片或较大图像,请将其缩小到2500像素并重新上传。

英文提示:Post-processing of the image failed. If this is a photo or a large image, please scale it down to 2500 pixels and upload it again.

问题原因

由于现在的手机动则几千万像素,随便一张照片都是四五兆大小,分辨率更是可怕(虽然DPI很低),所以WordPress 5.3这个版本开始,引入了一种通过检测大图像并生成它们的“网络优化最大尺寸”来管理这些图像的新方法,用来解决这种大图片。

它是如何工作的?

当上传新图像时,WordPress将通过检查其高度或宽度是否大于来检测它是否为“大”图像big_image threshold。默认阈值为2560px,可以使用新big_image_size_threshold过滤器进行过滤。

如果图像的高度或宽度大于此阈值,则将按比例缩小该阈值,并将其用作最大高度和最大宽度值。缩小的图像将用作最大可用尺寸。

在这种情况下,原始图像文件存储在uploads目录中,其名称存储在图像元数组中的另一个数组键中original_image。为了始终获得原始上传图像的路径,wp_get_original_image_path()引入了一个新功能。

解决办法

方法一:重启(清理缓存)解决

缙哥哥最近遇到太多的类似问题了,比如升级 WordPress 几次了,还是老版本……都是缓存惹的祸,当你不知道什么缓存引起的问题时,重启服务器解决。绝大多数 WordPress 站长是使用 Memcached 或 Redis 内存缓存(拓展阅读《Redis和Memcached哪个比较好?》),如果你还使用了缓存插件,包括但不限于W3 Total Cache、WP SUPER CACHE、wp rocket……也顺便清理下缓存,排除其影响的可能性。然后重新尝试上传图片,或许就不会有“请将其缩小到2500像素并重新上传”这样可恶的提示了。

方法二:使用代码或插件禁止裁剪功能

我们根据其工作原理可以得知,将其禁用:

缩放比例由big_image_size_threshold 滤波器控制  。false从过滤器回调返回将禁用它。老规矩,在当前主题的 functions.php 文件中添加:

//禁用WordPress大图片(2560大小)裁剪功能
add_filter( 'big_image_size_threshold', '__return_false' );

如果你懒得加这句代码,还可以使用Disable "BIG Image" Threshold这个插件进行对WordPress5.3版本以上的大图像阈值进行禁用

  • https://wordpress.org/plugins/disable-big-image-threshold/

这个比较适合那些上传之前就已经处理的,或者需要上传高清大图的摄影师,以保留原始图片。

方法三:提前处理好你的图片

一般主体能够显示的图片宽度也就是600-900之间,比如淘宝详情页的图片也就是790px,再比如,缙哥哥的博客大部分图片都是800px。所以,缙哥哥建议你在上传图片之前先把图片处理好,并压缩一下。这样既能够给自己的服务器或者对象存储省空间,还能给访客带来极速的感觉。

  • 《继 TinyPNG 后谷歌推出 Squoosh 图片压缩神器》
  • 《Optimizilla在线图片优化器,又一款中文在线无损压缩图片工具》
  • 《如何利用2345看图王批量压缩WordPress图片以提高站点速度》

方法四:增加PHP内存限制

排除掉服务器缺少可用内存以使后台上载过程成功完成。这是共享WordPress托管的一个非常常见的问题。要修复它,您需要增加PHP可以使用的内存量。这里缙哥哥建议使用 256 MB 以上。

使用wp-config.php增加PHP内存限制

您可以通过将以下代码添加到wp-config.php文件来增加PHP内存限制。注意:这可能会被W​​ordPress主机的服务器级规则覆盖。

define( 'WP_MEMORY_LIMIT', '256M' );

方法五:更改Nginx上传文件大小

将Nginx最大上传文件参数client_max_body_size调大,来避免某些图片可能出现的上传错误,如果你用的是宝塔的话那就非常方便了,直接改下数值即可,下图供参考:

收藏 (1) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (1)
如需 WordPress 优化加速、二次开发、网站维护、企业网站建设托管等服务,可联系我购买付费服务:点此联系我 | 近期站内热门福利推荐:

:本文采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可, 转载请附上原文出处链接。
1、本站提供的源码不保证资源的完整性以及安全性,不附带任何技术服务!
2、本站提供的模板、软件工具等其他资源,均不包含技术服务,请大家谅解!
3、本站提供的资源仅供下载者参考学习,请勿用于任何商业用途,请24小时内删除!
4、如需商用,请购买正版,由于未及时购买正版发生的侵权行为,与本站无关。
5、本站部分资源存放于百度网盘或其他网盘中,请提前注册好百度网盘账号,下载安装百度网盘客户端或其他网盘客户端进行下载;
6、本站部分资源文件是经压缩后的,请下载后安装解压软件,推荐使用WinRAR和7-Zip解压软件。
7、如果本站提供的资源侵犯到了您的权益,请邮件联系: 1798582342@qq.com 进行处理!

文章版权及转载声明

作者:有趣本文地址:https://www.zyhao.net/271220.html最后更新时间为 2022年02月05日 星期六 19:17:29
文章转载或复制请以超链接形式并注明来源出处 有趣源码
声明:某些文章或资源具有时效性,若有 错误 或 所需下载资源 已失效,请联系客服QQ:11210980

有趣源码,优质资源分享网

常见问题
  • 本站所有资源版权均属于原作者所有,均只能用于参考学习,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担
查看详情
  • 最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,建议提前注册好百度网盘账号,使用百度网盘客户端下载
查看详情

相关文章