你可能想看看这个插件Regenerate Thumbnails by Viper007Bond.
基本上,这就是如何做到这一点:
function regenerateThumbnails() {
$images = $wpdb->get_results( "SELECT ID FROM $wpdb->posts WHERE post_type = \'attachment\' AND post_mime_type LIKE \'image/%\'" );
foreach ( $images as $image ) {
$id = $image->ID;
$fullsizepath = get_attached_file( $id );
if ( false === $fullsizepath || !file_exists($fullsizepath) )
return;
if ( wp_update_attachment_metadata( $id, wp_generate_attachment_metadata( $id, $fullsizepath ) ) )
return true;
else
return false;
}
}
注意:此功能的可扩展性不强。它将遍历所有图像并逐个重新生成缩略图,这可能会消耗大量内存。因此,您可能需要增强它。