php—删除wordpress的附加图像大小后自动删除无用的附件元数据

rmbxnbpk  于 2021-06-21  发布在  Mysql
关注(0)|答案(0)|浏览(234)

一些4.8.x版本的wordpress悄悄地决定我需要额外的图片到我已经上传到它的媒体库的每一个。而我绝对不是。
我已经阻止了以后在wp的媒体库中创建额外的图像,方法是将以下代码添加到我的 functions.php :

// Prevent WordPress from generating additional image sizes
function shapeSpace_customize_image_sizes($sizes) {
    unset($sizes['thumbnail']);
    unset($sizes['medium']);
    unset($sizes['medium_large']);
    unset($sizes['large']);
    return $sizes;
}
add_filter('intermediate_image_sizes_advanced', 'shapeSpace_customize_image_sizes');
add_filter('max_srcset_image_width', create_function('', 'return 1;'));

至少我希望我已经阻止了这个不必要的为我自己的功能。是吗?
现在我必须删除任何无用的图像,这也不是问题。
问题是从wp的mysql数据库中删除无用的元数据。我有大约700张图片,这就是为什么我不喜欢手动操作。
什么mysql查询可以帮助我通过几次点击来实现这一点?
我相信我必须批量编辑wp\u postmeta表的\u wp\u attachment\u metadata列,删除包含 -100x100.jpg (或 -700x700.jpg 在我的特定表,或任何其他大小)的一部分。
以下是示例单元格的内容

a:5:
    {s:5:"width";i:700;s:6:"height";i:700;s:4:"file";s:65:"IMAGE1.jpg";s:5:"sizes";a:2:
        {s:29:"woocommerce_gallery_thumbnail";a:4:
            {s:4:"file";s:73:"IMAGE1-100x100.jpg";s:5:"width";i:100;s:6:"height";i:100;s:9:"mime-type";s:10:"image/jpeg";}
        s:18:"woocommerce_single";a:4:
            {s:4:"file";s:73:"IMAGE1-700x700.jpg";s:5:"width";i:700;s:6:"height";i:700;s:9:"mime-type";s:10:"image/jpeg";}
        }
        s:10:"image_meta";a:12:{s:8:"aperture";s:1:"0";s:6:"credit";s:0:"";s:6:"camera";s:0:"";s:7:"caption";s:0:"";s:17:"created_timestamp";s:1:"0";s:9:"copyright";s:0:"";s:12:"focal_length";s:1:"0";s:3:"iso";s:1:"0";s:13:"shutter_speed";s:1:"0";s:5:"title";s:0:"";s:11:"orientation";s:1:"0";s:8:"keywords";a:0:{}
        }
    }

我认为应该将\u wp\u attachment\u metadata列中的每个单元格从

{s:29:"woocommerce_gallery_thumbnail";a:4:
        {s:4:"file";s:73:"IMAGE1-100x100.jpg";s:5:"width";i:100;s:6:"height";i:100;s:9:"mime-type";s:10:"image/jpeg";}
    s:18:"woocommerce_single";a:4:
        {s:4:"file";s:73:"IMAGE1-700x700.jpg";s:5:"width";i:700;s:6:"height";i:700;s:9:"mime-type";s:10:"image/jpeg";}
    }

我可以只说 -100x100.jpg 或者 -700x700.jpg 在查询中?
最后,查询应该是什么样的?
ps:我知道只有woocommerce需要这些额外的图片。
pps:问题太大了。对此我很抱歉。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题