题
我希望能够以编程方式刷新缩略图缓存,不确定在哪里挂接它,但是目前任何设计更改都意味着重新上传摄影量!
解决方案
您可能想查看插件 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;
}
}
注意:此功能不是很可扩展。它将循环遍历所有图像,并逐一再生缩略图,这可能会消耗大量内存。因此,您可能需要增强它。