質問

サムネイルキャッシュをプログラムでリフレッシュできるようにしたいのですが、どこにフックするかはわかりませんが、現在、デザインの変更により、大量の画像が再アップロードされることを意味します。

役に立ちましたか?

解決

プラグインを見たいかもしれません 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;
    }
}

注:この機能はあまりスケーラブルではありません。すべての画像をループし、サムネイルを1つずつ再生し、大量のメモリを消費する可能性があります。だから、あなたはそれを強化したいかもしれません。

ライセンス: CC-BY-SA帰属
所属していません wordpress.stackexchange
scroll top