使用WordPress安全的网站在运营一段时间,尤其是文章配图比较多的情况下,你网站的uploads文件夹下面会产生很多缩略图图片。
这些缩略图图片对于我们网站来说是没有用处的,所以如果你安装完网站一开始就禁止生成缩略图,那么就不会受到这个问题的干扰。
下面就来教大家如何批量删除WordPress缩略图文件。
注意:删除图片前先备份,避免删错。
使用插件批量删除
WordPress的插件系统比较丰富,不过关于批量删除缩略图这方面的插件不多,奶爸把市面上能找到的都测试了一遍,最后剩下下面这3款。
DNUI
DNUI这款插件是网上搜到的资料介绍最多的一款批量删除WordPress缩略图的插件,不过实际测试中,发现DNUI的使用体验并不好,它只能扫描当前最新月份的图片,在测试站点上还有2017和2018年的缩略图DNUI无法扫描出来。
但是已经扫描出来的文件,是可以批量删除的。
Image Cleanup
Image Cleanup这款WP插件虽然在测试时顶部有一个错误提醒,但是并不影响它的功能,Image Cleanup是奶爸建站笔记在测试批量删除WP缩略图时唯一一款能完整扫描到所有缩略图片的插件。
如果你想要用插件删除的话,这款是不错的选择。
Media Cleaner
Media Cleaner是测试的插件里面最新的一款,所以跟WordPrss的兼容性没有问题,但是测试中发现该插件无法扫描到之前文件夹的图片内容。
Force Regenerate Thumbnails
这款插件是强制重新生成缩略图可让您删除所有旧图像的大小,并真正重新生成图像附件的缩略图。
特别说明:
关于上面的插件无法扫描到2020年之前的图片文件,猜测原因应该是因为奶爸测试站点上面2020年之前的图片没有写入数据库(在网站搭建好后数据库重置过),所以插件只扫描到了在数据库中存在记录且没有被文章引用的文件。
手动批量删除
手动批量删除是比较稳妥的方法,分为FTP删除和ssh命令批量删除。该方法会用到的软件:#建站# 免费的VPS管理软件Xshell6/Xftp6中文版
使用FTP软件删除
使用FTP软件连接到服务器,例如xftp,进入你图片文件夹,批量选中图片结尾格式为”-数字x数字“的图片,然后右键选择删除即可。
该方法比较消耗时间跟体力,推荐度低。
使用ssh命令批量删除
这种方法是最快捷的,但是如果你文章插入的图片是缩略图而不是原图,则不要使用这种方法。
这种方法只似乎用于Linux的VPS服务器,如果你是虚拟主机,那么没办法操作。
使用xshell连接到服务器,然后切换到uploads文件夹下面执行下面的命令:
find . -name '*-[0-9][0-9]x[0-9][0-9]*' 和 find . -name '*-[0-9][0-9][0-9]x[0-9][0-9][0-9]*'
上面两条命令是查找文件名称包含”-数字数字x数字数字“和”-数字数字数字x数字数字数字“的文件。
因为wordpress缩略图命名格式就是这种,例如上图中的-75×75.jpg和-300×193.png
查找出来后确定这些文件可以删除,就使用下面的命令删除:
find . -name '*-[0-9][0-9]x[0-9][0-9]*' -exec rm -f {} ; 和 find . -name '*-[0-9][0-9][0-9]x[0-9][0-9][0-9]*' -exec rm -f {} ;
网上搜到的另外一种命令
可以利用选项-regex
来使用正则:
find . -regex './[0-9]+_[0-9]+.zip'
如果需要将找到的文件删除则利用xargs
(注意确定之后再删除):
find . -regex './[0-9]+_[0-9]+.zip'|xargs rm -f
如果不仅要删除还要得到删除的数量,可以这样:
find . -regex './[0-9]+_[0-9]+.zip'|tee >(wc -l 1>&2)|xargs rm -f
好了,上面介绍的几种方法就可以帮删除全部缩略图.最后再次提醒,操作前请注意备份,避免删除有用的文件。