特别推荐项目:

挂机邦小小影视趣闲赚折头条优惠券袋熊视频鱼余兼职美团拍店蹲到所有V视宝
等待添加等待添加等待添加等待添加等待添加等待添加等待添加等待添加等待添加等待添加
我要投稿免费推广项目:点击进入
A-A+

WordPress删除文章时自动删除图片附件,wordpress插件批量删除文章无用图片

2020年09月06日 建站学习 暂无评论

今日推荐:正规挂机赚钱项目,已提5000元!

下载地址:http://zzr6.com/go/guajibang.htm

 

最近备份网站到本地,发现竟然备份文件达到2.5G,这文件竟然这么大,就算是从服务器上下载到本地我都得下载几个小时,后来我进网站看了下,大部分还是以前的一些图片和附件占用了大量的空间,包括一些无用的缩略图和一些特色图片,所以在网上寻找了很多方法,觉得下面这个是最好的了,分享给大家(代码和方法来自网络)。

  • 1、WordPress删除文章时自动删除图片附件

我清理内存时,发现很多文章都是过期文章了,比如很多项目都黄了很久了,觉得没有必要留在网站,所以将它删除了,但删除文章时,文章内所上传到媒体库的图片等附件不会自动删除,占用了网站空间,因此找到下面几行代码实现在删除文章时自动删除缩略图以及图片附件,这样就不用手动去媒体库寻找并删除,准确而且效率高。

将下面代码放到主题functions.php文件的最下面即可添加成功。


  1. /* 删除文章时删除图片附件 */
  2. function delete_post_and_attachments($post_ID) {
  3.         global $wpdb;
  4.         //删除特色图片
  5.         $thumbnails = $wpdb->get_results( "SELECT * FROM $wpdb->postmeta WHERE meta_key = '_thumbnail_id' AND post_id = $post_ID" );
  6.         foreach ( $thumbnails as $thumbnail ) {
  7.         wp_delete_attachment( $thumbnail->meta_value, true );
  8.         }
  9.         //删除图片附件
  10.         $attachments = $wpdb->get_results( "SELECT * FROM $wpdb->posts WHERE post_parent = $post_ID AND post_type = 'attachment'" );
  11.         foreach ( $attachments as $attachment ) {
  12.         wp_delete_attachment( $attachment->ID, true );
  13.         }
  14.         $wpdb->query( "DELETE FROM $wpdb->postmeta WHERE meta_key = '_thumbnail_id' AND post_id = $post_ID" );
  15. }
  16. add_action('before_delete_post', 'delete_post_and_attachments');

  • 2、wordpress批量删除网站文章无用的图片

如果我们默认安装WordPress之后没有设置媒体图的尺寸,只要我们上传一张图片就会自动剪裁多个尺寸存储在网站图片目录中。但是,随着网站内容的增加,我们会发现图片文件夹存储量还是比较大的,无论是转移数据,还是备份网站每次都是一个负担,甚至有些朋友用的虚拟主机是有存储量限制的,所以还是希望尽量的减少存储占用量。

理论上我们可以通过FTP登入服务器,然后检查图片命名,将没有用到的图片进行手动删除,但是这里也有一个问题,因为默认都是按照时间分管的,一个个删除和选择文件夹比较费事,肯定是有插件可以来解决这个问题。这里推荐一个DNUI (Delete Not Used Image)插件,安装插件之后可以看到哪些图片不在使用,然后根据实际的进行一个个删除。


在wordpress后台–插件–安装插件搜索DNUL 安装插件;

安装好了插件并启用之后,在wordpress后台–工具中找到Delete not used image选项,进入第二个选项images,插件会自动搜索没有被使用到的图片(如图所示):

 

你可以点击右侧上方的Delete all删除所有的没有使用的图片文件,也可以单独点击红色delete按钮删除单张图片文件。


在这里特别提醒一下,在做出删除图片文件的时候,一定要注意备份你的图片文件(图片和附件文件夹在你的根目录下wp-content/upload文件夹中,注意备份)。

给我留言