测试wp缩略图功能的时候不小心把所有的缩略图都删掉了,但保留了原图,不想一个个重新上传以生成缩略图,就使用了这段代码,注意生成成功之后,这段代码就可以删掉了。忽然想起之前钉钉宣传的某个功能,阅后即焚~~
function regenerate_all_thumbnails() {
$args = array(
'post_type' => 'attachment',
'post_mime_type' => 'image',
'posts_per_page' => -1,
'post_status' => 'inherit'
);
$query = new WP_Query($args);
if ($query->have_posts()) {
while ($query->have_posts()) {
$query->the_post();
$id = get_the_ID();
$fullsizepath = get_attached_file($id);
if (false !== $fullsizepath && file_exists($fullsizepath)) {
wp_update_attachment_metadata($id, wp_generate_attachment_metadata($id, $fullsizepath));
}
}
}
}
add_action('admin_init', 'regenerate_all_thumbnails');