WordPress バージョン 5.9 を操作しながら勉強中です。「メディア」にアップロードした画像がどのような挙動になるのか興味があったのでテストをしてみました。メモがてらわかったことや気になった点を簡単にまとめてみました。
「メディア設定」(設定 > メディア)の「アップロードしたファイルを年月ベースのフォルダーに整理」チェック ON/OFF による違い
以下のような挙動の違いがありました。
ONの場合
ドメイン/wp-content/uploads/yyyy/mm/ に格納される
OFFの場合
ドメイン/wp-content/uploads/ に格納される
普通に使っている分には意識する必要はなさそうですが、OFFの場合は1つのフォルダに画像が際限なく蓄積されていきそうなのを考慮すると、ONにしておいたほうがよさそうです。
アップロード画像のサイズによる、生成される数とサイズの違い
「メディア」に画像がアップロードされると、オリジナルと同時に複数のリサイズ画像が生成され、拡張子の前にはそれらサイズを示す値が付与されます。
以下、横幅が 1000px、2000px、3000px それぞれの画像をアップロードした場合に生成された画像のファイル名に付与される値です。
横幅 1000px の場合
- ファイル名.jpg(オリジナル)
- ファイル名-150x150.jpg
- ファイル名-300x200.jpg
- ファイル名-768x512.jpg
横幅 2000px の場合
- ファイル名.jpg(オリジナル)
- ファイル名-150x150.jpg
- ファイル名-300x200.jpg
- ファイル名-768x512.jpg
- ファイル名-1024x682.jpg
- ファイル名-1536x1024.jpg
横幅 3000px の場合
- ファイル名.jpg(オリジナル)
- ファイル名-150x150.jpg
- ファイル名-300x200.jpg
- ファイル名-768x512.jpg
- ファイル名-1024x682.jpg
- ファイル名-1536x1024.jpg
- ファイル名-2048x1365.jpg
- ファイル名-scaled.jpg(2560 × 1707)
「scaled」とは?
横幅 3000px の画像をアップロードした際に「scaled」という値が付与されたリサイズ画像が生成され疑問に思って調べてみました。
幅または高さが 2560px を超えた場合に、2560px におさまるよう自動調整して生成されるサイズのようです。WordPress 5.3 で追加された新機能のようです。
There is this new feature in WordPress 5.3 that allows users to upload big image file (threshold being either width or height of 2560px) and the core will scale it down.
https://wordpress.org/support/topic/media-images-renamed-to-xyz-scaled-jpg/
アップロード元による「投稿」との関連付けの違い
以下のような挙動の違いがありました。
1.「メディア」からアップロードした場合
- 「未添付」として扱われる
- 「投稿」画面から「この投稿へのアップロード」として扱われない
2.「投稿」からアップロードした場合
- 「未添付」として扱われない
- 「投稿」画面から「この投稿へのアップロード」として扱われる
投稿の画像として使われているかどうかを管理・フィルタしたい場合は「投稿」からアップロードした方がよさそうです。
どちらからのアップロードでもシンプルに「メディア」の画像がどの記事と紐づいているか、を参照できる機能が「メディア」に備わっていたら便利なのに…と個人的にはがゆい気分になりました。
「メディア」のパーマリンク
以下のような挙動の違いがありました。
1.「メディア」からアップロードした場合
ドメイン/*****/
2.「投稿」からアップロードした場合
ドメイン/?attachment_id=**
「メディア」からアップロードすると ドメイン/*****/ となるようですが、これはつまり「投稿」の「パーマリンク設定」を ドメイン/sample/ 形式にするとコンフリクトを起こすので、デフォルトとしてはよくない仕様のような気がします。
「投稿」記事URLとのコンフリクトの心配と投稿との関連付けを考慮すると、画像は必ず「投稿」からアップロードしたほうがよさそうです。