Optimizing Wordpress Upload Pictures

优化WordPress上传图片速度几种方法,减少数据库查询

大家好,我是雷锋哥。今天给大家介绍WordPress优化后台上传图片的一些方法,之前雷锋哥在WordPress后台上传图片时,有时候会遇到错误,特别是多图一起传的情况,数据库容易负载高,下面给大家讲解下如何优化WordPress上传图片速度,减少数据库查询。

WordPress上传的图片不要命名为1,否则会加大数据库查询:

有些人懒得图片命名,就随便来个1.jpg,这样WordPress后台上传图片的时候,会检测图片1.jpg是否已经有了,然后自动重命名 1-2.jpg,如果 1-2.jpg 也有了,就继续自动重命名,一直循环下去,数据库查询鸭梨山大。

如果实在懒,可以看下面的方法。

WordPress中文名称图片自动重命名 / 减少SQL查询:

情况1:如果你是Windows服务器,上传中文名称图片是会提示出错的,提示“上传时发生错误,请稍后再试。” 虽然可以用插件来自动转换成拼音/英文,但会影响上传图片时的性能,这里用一段代码让上传图片的时候自动重命名就可以了。

情况2:WordPress上传的图片名称重复太多,WordPress需要查询数据库后,重新命名图片,图片太多的情况,还有可能导致数据库挂了。

解决方法很简单,把下面的代码加在 functions.php 中:

add_filter('wp_handle_upload_prefilter', 'custom_upload_filter' );
function custom_upload_filter( $file ){
    $info = pathinfo($file['name']);
    $ext = $info['extension'];
    $filedate = date('YmdHis').rand(10,99);
    $file['name'] = $filedate.'.'.$ext;
    return $file;
}

原理就是根据上传时间给图片重命名,例如:2019092010182810.jpeg

如果你不会添加代码,可以参考:安全添加代码到functions.php文件的方法:Code Snippets

当然,你也可以直接使用这个插件:WordPress图片自动重命名插件Unique Rename Image File Upload

WordPress上传JPG格式图片自动压缩:

压缩图片,可以节省流量,加快网站加载速度。WordPress 默认提供了图片压缩功能,我们可以设置压缩率,需要注意的是,只支持JPEG格式的图片。

把下面的代码加在 functions.php 中:

add_filter( 'jpeg_quality', create_function( '', 'return 90;' ) );

代码中的 90 就是压缩率了,根据自己需求调整压缩率。

有其它图片压缩需求的,可以用「EWWW Image Optimizer」插件,支持JPG,PNG,甚至GIF。而且还提供了在压缩的时候,将图片格式进行转换的功能,比如转换成WebP格式,以及JPG和PNG之间的互转。

同类型的压缩图片插件还有很多,你可以选择一个自己用的顺手的安装使用。

减少WordPress上传图片的缩略图:

WordPress上传图片的时候会自动生成3种尺寸的缩略图,对虚拟主机/小内存的VPS多多少少会影响到性能,我们可以取消掉,或者只生成一种尺寸缩略图。

在 WordPress 后台设置 → 媒体里面 → 图像大小,把不需要生成的缩略图尺寸改为0就可以了。

如果你真的不需要缩略图,那就彻底关闭它吧。

把下面的代码加在 functions.php 中:

//彻底禁止WordPress缩略图
add_filter( 'add_image_size', create_function( '', 'return 1;' ) );

相关文章:禁止WordPress 5.2.1自动剪裁缩略图功能

清理WordPress没用到的缩略图:

上面说到禁用缩略图,那么之前生成的缩略图片很占用空间,手动清理那要崩溃,我们借助插件吧。

Delete not used image」一款可以自动搜索没用到的缩略图插件。

1.使用 Delete not used image 前,Delete not used image 会提示你先备份(建议先备份吧),在「options」里面的 Backup system / Create backup folder 可以备份,或者你自己通过其它方法备份也行。

2.在「options」里面的 _ Show,设置 original,直接 点击 就可以了,可以保证原图不会丢失。

3.点击「Images」就会开始查找缩略图图片了,然后「Delete all」全部删除

如果你的缩略图文件太多,可能要等待很久,会一直Fetching server…状态,耐心等待。

通过上面的优化设置,你会发现后台上传图片快了不少,现在开始放心大胆的上传图片吧,不怕数据库查询过多导致挂了。

其他相关文章:

做网站如果图片加载慢怎么办_网站图片加速的3种方法

统计WordPress网站图片数量、格式和大小的方法

免代码修改WordPress网站登录界面LOGO和图片

WordPress自动给图片添加ALT和标题名称

本文是全系列中第18 / 20篇:WordPress优化

2.5/5 - (2 votes)
滚动至顶部