私は自分の画像処理ワークフローがどのようになるべきかを判断しようとしています。 WordPressはアップロード時に自動的に画像をさまざまなサイズにサイズ変更して圧縮します。元の画像を圧縮するのであれば、私は興味があります。
小さい画像では圧縮されるので(必要に応じて)、小さいサイズで再圧縮するためにすでに圧縮されているJPEGをアップロードしたくありません。しかし、それがオリジナルを圧縮しないならば、私は誰かがオリジナルを見に行くとき必要以上に大きい画像ファイルを持っているでしょう。
私は理想的なワークフローはWordPressに高品質の100 JPEGをアップロードし、フル品質の画像を使用してすべての小さい画像をリサイズして圧縮してからオリジナルも圧縮することだと私は考えています。これが可能であるかどうか誰かが知っていますか(またはこれが既に行われていることである場合)。
wp_handle_upload
のwp-admin/includes/file.php
関数のソースコードを読むことで得られるのはこれだけです。
jpeg_quality
フィルタを追加することでJPEG圧縮レベルを調整できます。
add_filter('jpeg_quality', 'ex46632_jpeg_quality');
function ex46632_jpeg_quality($quality) {
$quality = 95; // An example of setting the quality to a higher value.
return $quality;
}
Max Width
フィルタを追加することで、アップロードされた画像をMax Height
で指定されたSettings > Media > Large size
/wp_upload_resize
に強制的にサイズ変更することができます。
add_filter('wp_upload_resize', 'ex46632_upload_resize');
function ex46632_upload_resize($resize) {
$resize = true; // Force resizing to the max sizes.
return $resize;
}
ここのコードサンプルはテストされていないので参考用です。
Updatewp_handle_upload
関数でのサイズ変更の処理に変更が加えられました。この変更によりバグが修正され、サイズ変更コードが実際に削除されたため、画像はアップロード時にサイズ変更されず、元のサイズに維持されます。参考のために 明示的なコード変更 そして バグチケット 。この変更はまだ「3.4へのレビュー待ち」であり、まだリリースされていないことに注意してください。
チケット には "アップロード前に画像のサイズを変更させる"というコメントがありますので、Pluploadが含まれているので、画像のサイズ変更を確認する別の場所があるかもしれません。