スマートフォンで撮った写真を、そのままWordPressにアップロードする。それだけで、サーバーには何枚の画像ができるでしょうか。

Localで作ったテストサイトで、5000×2598ピクセル(889KB)の写真を1枚アップロードしてみると、できたファイルは8枚、合計1.58MBでした。元の写真の1.8倍です。


WordPressで記事販売ができる「YOMERU」
記事を、そのまま収益に。
WordPressサイトで記事の有料販売ができる
無料のプラグイン「YOMERU」。

1枚の写真から作られた8枚のファイル

WordPressは、画像をアップロードすると、表示する場所に合わせて大きさの違う画像を自動で作ります。テストサイト(WordPress 7.1.3、テーマはTwenty Twenty-Five)で作られたのは、次の8枚でした。

写真1枚をアップロードして作られたファイル

いちばん大きいのは、アップロードした元の写真そのもの(889KB)です。ここに、2560pxに縮めた画像と、6つのサイズの画像が加わります。

それぞれの画像の役割

画像 大きさ 使われる場面
サムネイル 150×150 管理画面の一覧、記事の一覧の小さな画像など。正方形に切り抜かれる
中サイズ 幅・高さ300まで 記事に小さめに入れるとき
medium_large 幅768まで スマートフォンなど、画面の小さい端末向け。設定画面には出てこない
大サイズ 幅・高さ1024まで 記事の本文に大きく入れるとき
1536×1536、2048×2048 幅・高さ1536、2048まで 高解像度の画面向け。設定画面には出てこない
-scaled 幅・高さ2560まで 大きすぎる写真の代わりに、「フルサイズ」として使われる

ブラウザは、画面の大きさに合わせて、この中からちょうどよい大きさの画像を選んで読み込みます。スマートフォンで見る人に、5000pxの写真をそのまま送らずに済むわけです。

「2560px」の仕組み

アップロードした画像の幅か高さが2560pxを超えると、WordPressは2560pxに縮めた画像を作り、ファイル名の最後に「-scaled」を付けます。WordPress 5.3から入った仕組みです。対象はJPEGなどの写真で、PNGの画像は2560pxを超えても縮められません。

参考:big_image_size_threshold(WordPress Developer Resources)

メディアライブラリで画像を開くと、ファイル名が「photo-scaled.jpg」、大きさが2560×1330ピクセルになっていました(①)。その下の「元の画像」(②)が、アップロードした5000pxの写真です。

-scaled付きのファイル名と元の画像

サイトに表示されるのは2560pxまでの画像で、元の写真はサーバーに残るだけです。それでも8枚の中でいちばん大きく、容量の半分以上を占めています。

テーマによって、できる枚数は変わる

テーマは、自分のデザインに合わせた大きさの画像を追加で作らせることがあります。tcd-theme.comでも、1000×608pxのアイキャッチ画像を1枚アップロードすると、テーマが決めた大きさ(790×480、450×280、380×230など)を含めて、6つのサイズが作られていました。

元の画像より大きいサイズは作られません。1000pxの画像なら、1024px以上の大サイズや、1536px、2048pxの画像はできません。

サーバーの容量を節約する方法

1. 先に小さくしてからアップロードする

いちばん効くのは、アップロードする前に写真を小さくしておくことです。同じ写真を2000pxに縮めてからアップロードすると、「-scaled」の画像が作られず、元の画像も277KBで済みました。

画像の圧縮には、TinyPNGなどのサービスも使えます。

2. 使わないサイズを作らないようにする

「設定」→「メディア」で、サムネイル(①)、中サイズ(②)、大サイズ(③)の大きさを変えられます。幅と高さを0にすると、そのサイズは作られなくなります。

メディア設定の画像サイズ

設定画面に出てこない1536px、2048pxの画像は、コードで止めます。子テーマの functions.php か、コードスニペット用のプラグインに追加します。

add_filter( 'intermediate_image_sizes_advanced', function ( $sizes ) {
	unset( $sizes['1536x1536'], $sizes['2048x2048'] );
	return $sizes;
} );

テストサイトでこのコードを入れて同じ写真をアップロードすると、ファイルは6枚、合計1.28MBになりました。先に2000pxへ縮めた写真と組み合わせると、5枚で411KBまで減りました。最初の1.58MBの4分の1です。

サイズを止めると、高解像度の画面では少しぼやけて見えることがあります。また、テーマが使っているサイズは止めないようにします。どのサイズを使っているか分からないときは、止めるのは1536pxと2048pxだけにしておくのが無難です。

3. 2560pxの基準を変える

「-scaled」を作る基準の2560pxも、コードで変えられます。次の例では、2000pxを超える画像を2000pxに縮めます。

add_filter( 'big_image_size_threshold', function () {
	return 2000;
} );

return false; にすると、縮めずにそのまま使うようになりますが、大きな写真がそのまま表示に使われるので、おすすめしません。

設定を変えたら、すでにある画像も作り直す

サイズの設定を変えても、これまでにアップロードした画像には反映されません。作り直すには、プラグイン「Regenerate Thumbnails」を使うか、WP-CLIが使えるなら wp media regenerate を実行します。

使わなくなったサイズの画像の扱いは、道具で違います。wp media regenerate は、初期設定で古いサイズの画像を消してから作り直します。ほかのサイトから画像のURLに直接リンクされている場合は、–skip-delete を付けると古い画像を残せます。Regenerate Thumbnails は、古いサイズを消すかどうかを、作り直す前にチェック欄で選びます。ただし、Regenerate Thumbnails は最終更新が2025年8月で、WordPress.orgでは最新の3つのメジャーバージョンで未検証と表示されています。

参考:wp media regenerate(WP-CLI)

アップロードしたまま使っていない画像の整理には、Media Cleanerなどのプラグインが使えます。

まとめ

まずは、FTPやサーバーのファイルマネージャーで wp-content/uploads の中の今月のフォルダを開きます。「-scaled」「-1536x」「-2048x」が付いたファイルが並んでいたら、スマートフォンの写真をそのまま上げています。次の写真から2000pxに縮めて上げ、1536pxと2048pxを止めるかは、テーマが使っているかを確かめてから決めます。

メディア設定のほかの項目は、こちらの記事で紹介しています。

世界最高品質のデザインの
WordPressテーマ集
WordPressテーマ「ISSUE」
WordPressテーマ「ISSUE」
人材不足を解決する求人採用サイトを。
WordPressテーマ「SEEED」
WordPressテーマ「SEEED」
Webサービスを販売するLP型テーマ。
WordPressテーマ「GENESIS」
WordPressテーマ「GENESIS」
スタイリッシュな企業サイトの決定版。
WordPressテーマ「SOLARIS」
WordPressテーマ「SOLARIS」
一流の企業のための一流の企業サイトを。