このページは「Introducing handling of big images in WordPress 5.3」をもとに作成しています。
WordPress にアップロードされる画像は主に2種類に分けられます:
- 画像編集アプリなどで加工済み、または作成したもの
- カメラなどから未加工のまま直接アップロードした写真
上のものについてはたいていのケースで、Web 向けの最適なサイズに縮小済みでしょう。
下の場合の画像は Web で使うにはかなり大きすぎで最適化もされていません。最近のスマホで撮った画像なら余裕で 5MB を超えます。高級なカメラで撮った写真ならそれよりはるかに大きくなります。
WordPress 5.3 では、大きなイメージを検出して、Web に最適な最大サイズを生成する新しい管理方法が導入されています。
動作原理
新しい画像をアップロードすると、WordPress は big_image threshold
で設定した幅、または高さを超えていないかチェックします。デフォルトの閾値は 2560 ピクセルで、big_image_size_threshold
でフィルタ可能です。
画像の高さ、または幅がこの閾値を超える場合、指定した値を最大幅、かつ最小幅として縮小を行います。この縮小画像が使用できる画像の最大サイズとなります。
この操作が行われた場合、オリジナルのアップロード画像はアップロードディレクトリに保存され、画像メタ配列の original_image
で参照します。常時オリジナル画像のパスを取得できるように、新しく wp_get_original_image_path()
関数が追加されました。
縮小を無効にするには
縮小処理は big_image_size_threshold
フィルタで制御されます。フィルタコールバックから false
を返せば無効にできます。
add_filter( 'big_image_size_threshold', '__return_false' );