WordPressで画像・ファイルをアップロードできない原因と解決策|初心者向けにエラー別で徹底解説

はじめに

WordPressで画像やPDFなどのファイルをアップロードしようとしたときに、「HTTPエラー」「このファイルタイプをアップロードする権限がありません」「ディスクにファイルを書き込めませんでした」などのエラーが出ることがあります。

ワードプレスのアップロードエラーは、原因がひとつとは限りません。ファイルサイズ、拡張子、ファイル名、サーバー容量、PHP設定、フォルダ権限、プラグイン、テーマ、セキュリティ設定など、複数の要因が関係している場合があります。

この記事では、WordPressで画像・ファイルをアップロードできない原因と解決策を、初心者にもわかりやすくエラー別に解説します。いきなり難しい設定を変更するのではなく、まずは簡単に確認できる項目から順番に見ていきましょう。

1. WordPressで画像・ファイルをアップロードできないときに最初に確認すること

WordPressでアップロードできないときは、焦って設定ファイルを編集する前に、状況を切り分けることが大切です。原因を絞り込まずに作業すると、別の不具合を起こしてしまうことがあります。

1-1. まずはエラーメッセージを確認する

最初に確認したいのは、画面に表示されているエラーメッセージです。

たとえば、次のような表示が出ていないか確認しましょう。

「このファイルタイプをアップロードする権限がありません」と表示される場合は、拡張子やMIMEタイプが許可されていない可能性があります。

「アップロードしたファイルは php.ini で定義された upload_max_filesize を超過しています」と表示される場合は、ファイルサイズがサーバー側の上限を超えています。

「HTTPエラー」と表示される場合は、画像処理、サーバーのメモリ不足、プラグイン干渉、通信エラーなど、複数の原因が考えられます。

「ディスクにファイルを書き込めませんでした」と表示される場合は、サーバー容量不足やuploadsフォルダの権限に問題がある可能性があります。

エラー文を正確に確認するだけで、解決までの道筋がかなり明確になります。

1-2. 画像だけアップロードできないのか、PDFなどのファイルもできないのかを切り分ける

次に、アップロードできないのが画像だけなのか、PDFやZIPなど他のファイルも同じように失敗するのかを確認します。

画像だけアップロードできない場合は、画像サイズ、画像形式、画像処理ライブラリ、画像最適化プラグインなどが関係していることがあります。

一方で、PDFやZIPも含めてすべてのファイルがアップロードできない場合は、サーバー容量、PHP設定、uploadsフォルダの権限、WAFなど、WordPress全体のアップロード機能に関わる問題の可能性が高くなります。

切り分けるときは、次のように試すとわかりやすいです。

小さいJPG画像、PNG画像、PDFファイルをそれぞれ1つずつ用意し、アップロードできるか確認します。どのファイルだけ失敗するのかを見ることで、原因を絞り込めます。

1-3. 新規投稿・固定ページ・メディアライブラリのどこで失敗するか確認する

WordPressでは、投稿編集画面、固定ページ編集画面、メディアライブラリなど、複数の場所から画像やファイルをアップロードできます。

投稿画面では失敗するのに、メディアライブラリからはアップロードできる場合、ブロックエディターや特定のプラグイン、テーマのJavaScriptが影響している可能性があります。

逆に、メディアライブラリでも投稿画面でも失敗する場合は、WordPress全体またはサーバー側の問題である可能性が高くなります。

WordPressのメディア追加画面では、ファイルをアップロードする画面に最大アップロードサイズが表示されます。この上限はホスティング環境の設定に左右されます。WordPress.org

1-4. ブラウザ・通信環境・WordPressの一時的な不具合を確認する

一時的なブラウザの不具合や通信エラーでも、WordPressのアップロードが失敗することがあります。

まずはページを再読み込みし、再度アップロードしてみましょう。それでも解決しない場合は、ブラウザのキャッシュを削除する、シークレットモードで試す、別のブラウザで試す、別のネットワーク環境で試すといった確認を行います。

特に大きな画像や動画をアップロードしている場合、通信が不安定だと途中で処理が止まることがあります。Wi-Fiが不安定な場合は、有線接続や別の回線で試すのも有効です。

1-5. いきなり設定変更する前にバックアップを取る

WordPressのアップロードエラーを解決する過程では、php.ini、.htaccess、wp-config.php、プラグイン設定、テーマ設定などを変更することがあります。

これらのファイルを誤って編集すると、サイトが表示されなくなる可能性があります。作業前には、必ずバックアップを取りましょう。

最低限、次のバックアップを用意しておくと安心です。

WordPress本体ファイル、wp-contentフォルダ、データベース、変更予定の設定ファイルです。

初心者の場合は、サーバーの自動バックアップ機能やバックアッププラグインを使うと安全です。

2. WordPressでアップロードできない主な原因一覧

WordPressで画像やファイルをアップロードできない原因は、大きく分けると「ファイル側の問題」「WordPress側の問題」「サーバー側の問題」に分類できます。

2-1. ファイルサイズが上限を超えている

もっとも多い原因のひとつが、アップロードしようとしているファイルサイズが上限を超えているケースです。

WordPressのアップロード上限は、WordPress単体ではなく、サーバーのPHP設定やホスティング会社の制限によって決まります。

たとえば最大アップロードサイズが2MBの環境で、5MBの画像や10MBのPDFをアップロードしようとするとエラーになります。

特にスマホやデジカメで撮影した写真は、1枚あたり数MBから十数MBになることがあります。見た目には普通の写真でも、WordPressにアップロードするには大きすぎることがあるため注意しましょう。

2-2. 対応していない拡張子・ファイル形式を使っている

WordPressでは、セキュリティ上の理由からアップロードできるファイル形式が制限されています。

一般的には、JPG、JPEG、PNG、GIF、PDF、MP3、MP4などは利用されることが多いですが、すべてのファイル形式が常に許可されているわけではありません。

WordPressには許可されたMIMEタイプと拡張子の仕組みがあり、開発者向けにはupload_mimesフィルターで許可リストを調整できます。WordPress Developer Resources+1

SVG、HEIC、一部のZIP、実行ファイルなどは、環境によってアップロードできないことがあります。

2-3. ファイル名に日本語・記号・空白が含まれている

ファイル名に日本語、全角文字、記号、空白、特殊文字が含まれていると、アップロード後に画像が表示されない、リンク切れになる、メディアライブラリで正しく扱えないといった問題が起きることがあります。

たとえば、次のようなファイル名は避けたほうが安全です。

商品画像 ①.jpg

会社ロゴ(最新版).png

2026/06/banner.jpg

おすすめは、半角英数字とハイフンのみを使う形式です。

product-image-01.jpg

company-logo.png

banner-2026-06.jpg

ファイル名を整えるだけで、ワードプレスのアップロードエラーが解決することもあります。

2-4. サーバーの容量が不足している

サーバーのディスク容量が不足していると、WordPressはアップロードされたファイルを保存できません。

この場合、「ディスクにファイルを書き込めませんでした」といったエラーが表示されることがあります。

画像やPDFを長年アップロードしているサイトでは、気づかないうちに容量を圧迫していることがあります。特に、バックアップファイル、不要な画像、古いテーマ、使っていないプラグイン、キャッシュファイルが溜まっている場合は注意が必要です。

2-5. PHPメモリ・実行時間・アップロード上限が足りない

WordPressで画像をアップロードすると、単にファイルを保存するだけでなく、サムネイル作成や画像サイズ生成などの処理が行われます。

この処理に必要なメモリが不足していると、アップロード中にエラーが発生します。

関係しやすいPHP設定は次のとおりです。

upload_max_filesize

post_max_size

memory_limit

max_execution_time

max_input_time

大きな画像をアップロードする場合、ファイルサイズ上限だけでなく、メモリ上限や実行時間も関係します。

2-6. wp-content/uploadsの権限・パーミッションに問題がある

WordPressにアップロードされた画像やファイルは、通常wp-content/uploadsフォルダに保存されます。

このフォルダに書き込み権限がない場合、アップロードは失敗します。

サーバー移行後、復元作業後、FTPで手動変更した後などに、フォルダの所有者やパーミッションが変わってしまうことがあります。

一般的には、フォルダは755、ファイルは644がよく使われます。ただし、サーバー環境によって適切な値が異なる場合があるため、不明な場合はサーバー会社の案内に従いましょう。

2-7. プラグインやテーマが干渉している

画像最適化プラグイン、セキュリティプラグイン、キャッシュプラグイン、フォームプラグイン、ページビルダー系プラグインなどが、アップロード処理に影響することがあります。

特に、画像を自動圧縮したり、WebP変換したり、アップロード時にリサイズしたりするプラグインは、サーバー負荷が高いとエラーの原因になることがあります。

また、テーマ独自の画像処理やカスタム投稿タイプが原因になる場合もあります。

2-8. セキュリティ設定・WAF・サーバー制限にブロックされている

サーバーのWAFやModSecurity、セキュリティプラグインが、アップロード処理を不正な通信と判断してブロックすることがあります。

特定のファイル名、拡張子、リクエスト内容、管理画面URLへのアクセスが原因でブロックされるケースがあります。

この場合、WordPress側では原因がわかりにくく、「HTTPエラー」「JSONレスポンスエラー」などとして表示されることがあります。

2-9. WordPress本体・PHP・サーバー環境のバージョンが古い

WordPress本体、テーマ、プラグイン、PHPのバージョンが古いと、アップロード機能や画像処理で不具合が起きることがあります。

古いPHPでは画像処理ライブラリとの相性問題が起きたり、新しい画像形式に対応できなかったりする場合があります。

更新を長期間行っていないサイトでは、まずバックアップを取ったうえで、WordPress本体・テーマ・プラグイン・PHP環境を見直しましょう。

3. エラー別|WordPressで画像・ファイルをアップロードできないときの解決策

ここからは、WordPressでよく表示されるアップロードエラーごとに、原因と解決策を解説します。

3-1. 「このファイルタイプをアップロードする権限がありません」と表示される場合

このエラーは、WordPressで許可されていない拡張子やMIMEタイプのファイルをアップロードしようとしたときに表示されます。

まず確認することは、ファイル形式です。

JPGやPNGに見えても、実際には拡張子だけ変更した別形式のファイルである可能性があります。画像編集ソフトや変換ツールを使って、正しい形式で書き出し直しましょう。

SVG、HEIC、AI、PSD、EXE、PHPなどは、標準環境ではアップロードできない、またはセキュリティ上おすすめできない場合があります。

許可する必要がある場合は、専用プラグインを使うか、functions.phpでMIMEタイプを追加します。ただし、許可するファイル形式によってはセキュリティリスクがあります。

例として、SVGを許可する場合は、単にアップロード許可を追加するだけでなく、SVG内の危険なコードを除去するサニタイズ機能があるプラグインを使うことが重要です。

3-2. 「アップロードしたファイルは php.ini で定義された upload_max_filesize を超過しています」と表示される場合

このエラーは、ファイルサイズがPHPのupload_max_filesizeを超えているときに表示されます。

対処法は2つあります。

ひとつは、ファイルサイズを小さくする方法です。画像なら圧縮やリサイズを行い、PDFなら圧縮ツールを使います。

もうひとつは、サーバー側のアップロード上限を引き上げる方法です。

php.iniに次のような設定を行います。

INI
upload_max_filesize = 64M
post_max_size = 64M
memory_limit = 256M
max_execution_time = 300

ここで注意したいのは、post_max_sizeupload_max_filesize以上に設定する必要があることです。たとえばupload_max_filesizeを64Mにしても、post_max_sizeが8Mのままだと、大きなファイルはアップロードできません。

共用サーバーではphp.iniを直接編集できない場合があります。その場合は、サーバーパネル、.user.ini、.htaccess、またはサーバーサポートで対応します。

3-3. 「HTTPエラー」と表示される場合

WordPressの「HTTPエラー」は原因が広く、初心者にとってわかりにくいエラーです。

主な原因は、画像サイズが大きすぎる、サーバーメモリが不足している、画像処理に失敗している、プラグインが干渉している、WAFにブロックされている、通信が途中で切れているなどです。

まず試すべき対処法は、画像を小さくすることです。

横幅が4000px以上あるような大きな画像は、2000px前後まで縮小してからアップロードしてみましょう。WordPress関連のサポート事例でも、サーバーが画像を処理できない場合に小さい画像を試す案内が見られます。WordPress.org+1

次に、プラグインを一時停止します。特に画像最適化、キャッシュ、セキュリティ系のプラグインを停止して改善するか確認しましょう。

それでも解決しない場合は、PHPメモリ上限や実行時間を増やします。

PHP
define('WP_MEMORY_LIMIT', '256M');

この設定はwp-config.phpに追加できます。ただし、サーバー側の上限を超える値を指定しても反映されないことがあります。

3-4. 「ディスクにファイルを書き込めませんでした」と表示される場合

このエラーは、WordPressがサーバー上にファイルを書き込めないときに発生します。

主な原因は、サーバー容量不足、uploadsフォルダの権限不足、フォルダの所有者不一致です。

まず、サーバーパネルでディスク容量を確認しましょう。容量が不足している場合は、不要な画像、古いバックアップ、キャッシュファイル、使っていないテーマやプラグインを削除します。

次に、FTPまたはサーバーのファイルマネージャーでwp-content/uploadsフォルダのパーミッションを確認します。

フォルダが書き込み不可になっている場合は、サーバー推奨の権限に修正してください。

3-5. 「一時フォルダーがありません」と表示される場合

このエラーは、PHPがアップロード処理で使用する一時フォルダーを見つけられないときに発生します。

原因としては、サーバー側の一時ディレクトリ設定がない、権限がない、PHP設定に問題があるなどが考えられます。

初心者が自分で解決するのは難しいケースも多いため、まずはサーバー会社に問い合わせるのがおすすめです。

自分で確認する場合は、php.iniのupload_tmp_dirが正しく設定されているか確認します。

INI
upload_tmp_dir = /path/to/tmp

ただし、サーバー環境によって指定すべきパスは異なります。適当なパスを入力すると逆に不具合が起きるため、サーバーのマニュアルを確認しましょう。

3-6. 「画像の後処理に失敗しました」と表示される場合

このエラーは、アップロード後の画像処理に失敗したときに表示されます。

WordPressでは、画像をアップロードすると複数サイズのサムネイルを自動生成します。この処理に失敗すると、アップロード自体は始まっていても、最終的にエラーになることがあります。

対処法は次のとおりです。

画像の横幅・縦幅を小さくする、ファイルサイズを圧縮する、JPGまたはPNGに変換する、ファイル名を半角英数字にする、画像最適化プラグインを一時停止する、PHPメモリを増やす、別の画像でテストする。

特に高解像度の写真は、ファイルサイズが小さくても処理に大きなメモリを使うことがあります。容量だけでなく、画像のピクセル数にも注意しましょう。

3-7. 「サーバーは画像を処理できません」と表示される場合

このエラーは、サーバーが画像を処理するためのリソースを確保できないときに起こります。

原因としては、メモリ不足、画像が大きすぎる、画像形式に対応していない、画像ファイル自体が破損している、サーバーが一時的に高負荷になっているなどが考えられます。

まずは、画像を小さくして再アップロードしましょう。

次に、画像を別形式で保存し直します。HEICや特殊な形式の場合は、JPGまたはPNGに変換すると改善することがあります。

それでも解決しない場合は、PHPメモリやサーバーの画像処理ライブラリに問題がある可能性があります。サーバー会社に、GDまたはImageMagickの状態を確認してもらうとよいでしょう。

3-8. 「返答が正しいJSONレスポンスではありません」と表示される場合

このエラーは、ブロックエディターで投稿を保存したり画像をアップロードしたりするときに発生することがあります。

原因としては、REST APIの通信エラー、パーマリンク設定の不具合、セキュリティプラグインやWAFによるブロック、.htaccessの記述ミス、サーバー側のエラーなどが考えられます。

まず、管理画面の「設定」から「パーマリンク」を開き、何も変更せずに保存します。これにより、パーマリンク設定が再生成されることがあります。

次に、セキュリティプラグインやWAFを一時的に停止して確認します。

また、.htaccessが壊れている場合もあります。.htaccessはApache環境でディレクトリ単位の設定を行うファイルで、WordPressではパーマリンクなどにも関係します。WordPress.org Italia

3-9. メディアライブラリに画像が表示されない場合

アップロードしたはずの画像がメディアライブラリに表示されない場合、いくつかの原因が考えられます。

まず、メディアライブラリの表示フィルターを確認します。「画像」「未添付」「日付」などの絞り込みがかかっていると、対象の画像が表示されないことがあります。

WordPressのメディアライブラリでは、アップロード済みメディアの表示、編集、削除、検索、フィルタリングができます。WordPress.org

次に、FTPで直接アップロードしていないか確認しましょう。FTPでuploadsフォルダに画像を入れただけでは、WordPressのデータベースに登録されないため、メディアライブラリには表示されません。

FTPでアップロードした画像をメディアライブラリに表示したい場合は、専用プラグインで登録処理を行う必要があります。

3-10. アップロードは完了するが画像が真っ白・壊れて表示される場合

アップロード自体は成功しているのに画像が真っ白になったり、壊れて表示されたりする場合は、画像ファイル自体の破損、形式の不一致、画像最適化プラグインの処理ミス、キャッシュの影響、サムネイル生成の失敗などが考えられます。

まず、元の画像をパソコンで開けるか確認します。

次に、画像編集ソフトで開き、JPGまたはPNGとして書き出し直します。

さらに、ブラウザキャッシュ、WordPressキャッシュ、CDNキャッシュを削除します。

画像最適化プラグインを使っている場合は、WebP変換や遅延読み込みの設定を一時停止して確認しましょう。

4. 初心者でもできる基本的な対処法

ここでは、サーバー設定を触らずにできる基本的な対処法を紹介します。WordPress初心者は、まずこの章の内容から試してみてください。

4-1. ファイルサイズを小さくする

最初に試したいのは、ファイルサイズの圧縮です。

画像の場合は、圧縮ツールや画像編集ソフトを使って容量を小さくします。ブログ記事に使う画像であれば、必ずしも数MBの高画質画像は必要ありません。

目安として、通常のブログ本文画像なら数百KB程度まで圧縮しても十分なことが多いです。

PDFの場合も、PDF圧縮ツールを使うことで容量を大きく減らせます。

4-2. JPG・PNG・PDFなど対応形式に変換する

アップロードできないファイルは、WordPressで扱いやすい形式に変換しましょう。

写真ならJPG、透過画像やロゴならPNG、資料ならPDFが一般的です。

HEIC形式の写真は、環境によってアップロードや表示に問題が出ることがあります。iPhoneで撮影した写真がアップロードできない場合は、JPGに変換してから試してみましょう。

4-3. ファイル名を半角英数字に変更する

ファイル名は、半角英数字とハイフンで統一するのがおすすめです。

悪い例は次のとおりです。

新商品 画像(最終版).jpg

よい例は次のとおりです。

new-product-image.jpg

日本語ファイル名でもアップロードできる場合はありますが、サーバー移行、バックアップ復元、外部サービス連携、URL共有などでトラブルになることがあります。

4-4. 画像の横幅・縦幅を縮小する

ファイル容量が小さくても、画像のピクセル数が大きすぎるとアップロード後の処理で失敗することがあります。

たとえば、横幅6000pxの写真は、ブログ表示には大きすぎることが多いです。

通常のブログ記事であれば、横幅1200px〜2000px程度に縮小してからアップロードすると、エラー防止と表示速度改善につながります。

4-5. ブラウザのキャッシュを削除する

ブラウザに古い管理画面の情報が残っていると、アップロード画面が正しく動作しないことがあります。

ブラウザのキャッシュを削除し、WordPress管理画面を再読み込みしてから再度アップロードしてみましょう。

特に、WordPress本体やプラグインを更新した直後は、キャッシュが原因で一時的な不具合が出ることがあります。

4-6. 別のブラウザやシークレットモードで試す

Chromeで失敗する場合は、Edge、Firefox、Safariなど別のブラウザで試してみましょう。

また、ブラウザ拡張機能が干渉している可能性もあるため、シークレットモードで試すのも有効です。

広告ブロック、セキュリティ系拡張機能、翻訳拡張機能などが管理画面の動作に影響することがあります。

4-7. WordPressからログアウトして再ログインする

ログイン状態の一時的な不具合で、アップロードが失敗する場合があります。

一度WordPressからログアウトし、再ログインしてからアップロードを試してみましょう。

複数人で管理しているサイトでは、自分のユーザー権限が変更されていないかも確認してください。

4-8. メディアライブラリから直接アップロードする

投稿編集画面からアップロードできない場合は、管理画面の「メディア」から直接アップロードしてみましょう。

メディアライブラリから成功する場合は、投稿画面、ブロックエディター、ページビルダー、テーマ側の問題が疑われます。

逆に、メディアライブラリでも失敗する場合は、WordPress全体またはサーバー側の問題を疑いましょう。

5. WordPress側の設定で解決する方法

基本的な対処法で解決しない場合は、WordPress側の設定を確認します。

5-1. メディア設定を確認する

管理画面の「設定」から「メディア」を開きます。

ここでは、画像サイズやサムネイルサイズなどの設定を確認できます。

通常、この設定だけでアップロードエラーが直接解決するケースは多くありませんが、サムネイル生成や画像サイズに関係するため、極端な数値になっていないか確認しましょう。

5-2. プラグインを一時停止して原因を特定する

プラグインの干渉は、WordPressのアップロードエラーでよくある原因です。

まず、すべてのプラグインを一時停止し、アップロードできるか確認します。

アップロードできるようになった場合は、プラグインのどれかが原因です。ひとつずつ有効化しながら、どのプラグインを有効化した時点でエラーが再発するか確認しましょう。

特に確認したいのは、画像最適化、キャッシュ、セキュリティ、バックアップ、ページビルダー、会員制サイト関連のプラグインです。

5-3. テーマを一時的にデフォルトテーマへ変更する

テーマが原因でアップロードに失敗する場合もあります。

一時的にWordPress公式のデフォルトテーマに変更し、アップロードできるか確認しましょう。

テーマ変更が不安な場合は、本番サイトではなくステージング環境で試すのが安全です。

テーマを変えると表示が崩れる可能性があるため、事前にバックアップを取ってから作業してください。

5-4. WordPress本体・テーマ・プラグインを更新する

古いWordPress本体、テーマ、プラグインを使っていると、アップロード機能に不具合が出ることがあります。

管理画面の「更新」から、利用可能な更新がないか確認しましょう。

ただし、更新前には必ずバックアップを取ります。特に長期間更新していないサイトでは、いきなりすべてを更新すると表示崩れや互換性問題が起こる可能性があります。

5-5. 不要な画像・ファイルを削除して容量を確保する

サーバー容量が不足している場合は、不要なファイルを削除します。

メディアライブラリで使っていない画像、古いPDF、重複した画像、テスト用ファイルなどを整理しましょう。

ただし、「未添付」と表示されている画像でも、テーマやカスタムフィールドで使われている場合があります。削除前には本当に不要か確認してください。

5-6. 画像最適化プラグインの設定を見直す

画像最適化プラグインは便利ですが、アップロード時に圧縮、リサイズ、WebP変換などを行うため、サーバー負荷が高くなることがあります。

アップロードエラーが出る場合は、次の設定を見直しましょう。

自動圧縮を一時停止する、WebP自動変換を停止する、アップロード時ではなく後から最適化する設定に変更する、大きすぎる画像を処理しない設定にする。

設定を変更した後は、小さい画像でテストしてから通常の画像をアップロードします。

5-7. セキュリティ系プラグインの制限を確認する

セキュリティプラグインが、アップロード処理を不審な操作としてブロックしている場合があります。

特に、管理画面へのアクセス制限、REST API制限、XML-RPC制限、ファイルアップロード制限、特定拡張子の禁止設定などを確認しましょう。

一時的にセキュリティプラグインを停止してアップロードできる場合は、設定の見直しが必要です。

ただし、停止したまま放置するのは危険です。原因を特定したら、必要な保護機能は再度有効化しましょう。

6. サーバー側の設定で解決する方法

WordPress側の設定を確認しても解決しない場合は、サーバー側の設定を見直します。

6-1. サーバーのアップロード上限を確認する

まず、現在の最大アップロードサイズを確認します。

WordPress管理画面の「メディア」から「新規追加」を開くと、画面内に最大アップロードサイズが表示されます。

この数値が小さい場合、大きな画像やPDFをアップロードできません。

サーバーパネルにも、PHP設定やアップロード上限の項目が用意されていることがあります。

6-2. php.iniでupload_max_filesizeを変更する

upload_max_filesizeは、1ファイルあたりのアップロード上限を決めるPHP設定です。

php.iniを編集できる環境では、次のように設定します。

INI
upload_max_filesize = 64M

大きなPDFや動画を扱う場合は、さらに大きい値が必要になることもあります。

ただし、必要以上に大きくしすぎると、サーバー負荷やセキュリティ面で不利になることがあります。通常のブログ運営であれば、32M〜64M程度で足りるケースが多いです。

6-3. post_max_sizeを変更する

post_max_sizeは、POST送信全体の最大サイズを決める設定です。

ファイルアップロードでは、upload_max_filesizeだけでなくpost_max_sizeも重要です。

INI
post_max_size = 64M

post_max_sizeは、upload_max_filesize以上の値に設定します。

たとえば、upload_max_filesizeが64Mで、post_max_sizeが8Mの場合、64Mのファイルはアップロードできません。

6-4. memory_limitを増やす

memory_limitは、PHPが使用できるメモリの上限です。

画像アップロード時には、サムネイル生成や画像変換でメモリを使います。

INI
memory_limit = 256M

大きな画像を扱うサイトでは、128M以上、可能であれば256M程度に設定すると安定しやすくなります。

ただし、共用サーバーでは上限が決まっていることがあります。

6-5. max_execution_timeを変更する

max_execution_timeは、PHP処理の最大実行時間です。

アップロードや画像処理に時間がかかる場合、この時間を超えると処理が中断されます。

INI
max_execution_time = 300

大きなファイルを扱う場合は、120秒〜300秒程度に設定することがあります。

ただし、長くしすぎるとサーバー負荷が高くなるため、必要な範囲で調整しましょう。

6-6. .htaccessでアップロード制限を調整する

Apache環境では、.htaccessでPHP設定を変更できる場合があります。

apache
php_value upload_max_filesize 64M
php_value post_max_size 64M
php_value memory_limit 256M
php_value max_execution_time 300
php_value max_input_time 300

ただし、サーバーによっては.htaccessでphp_valueを使うと500エラーになることがあります。

編集前に必ずバックアップを取り、エラーが出た場合はすぐ元に戻せるようにしておきましょう。

6-7. wp-config.phpでメモリ上限を変更する

WordPress側のメモリ上限は、wp-config.phpで指定できます。

PHP
define('WP_MEMORY_LIMIT', '256M');
define('WP_MAX_MEMORY_LIMIT', '256M');

追加する場所は、通常「編集が必要なのはここまでです」と書かれた行より上です。

ただし、この設定はサーバー側のPHP上限を超えて有効になるわけではありません。サーバー側で128Mまでしか許可されていない場合、WordPress側で256Mと書いても反映されないことがあります。

6-8. wp-content/uploadsのパーミッションを確認する

FTPやファイルマネージャーで、wp-content/uploadsフォルダを確認します。

フォルダに書き込み権限がないと、WordPressは画像やファイルを保存できません。

一般的な目安は、フォルダが755、ファイルが644です。

ただし、サーバーによって推奨設定が異なる場合があります。むやみに777にするのはセキュリティ上おすすめできません。

6-9. WAF・ModSecurity・サーバーのセキュリティ設定を確認する

WAFやModSecurityがアップロード通信をブロックしている場合、WordPress側では原因がわかりにくいことがあります。

サーバーパネルにWAF設定がある場合は、一時的に無効化してアップロードできるか確認します。

無効化して成功する場合は、WAFの除外設定やセキュリティルールの調整が必要です。

本番サイトでWAFを完全に無効化したままにするのは危険です。確認後は必要に応じて再有効化しましょう。

6-10. サーバー会社に問い合わせるべきケース

次のような場合は、自分で無理に作業せず、サーバー会社に問い合わせるのがおすすめです。

php.iniを変更しても反映されない、一時フォルダーのエラーが出る、uploadsフォルダの所有者が変更できない、WAFのログを確認できない、サーバー容量に余裕があるのに書き込みエラーが出る、複数のWordPressサイトで同じエラーが出る。

問い合わせるときは、エラーメッセージ、発生日時、アップロードしたファイル形式とサイズ、試した対処法を伝えるとスムーズです。

7. 画像以外のファイルをアップロードできない場合の対処法

WordPressでは画像だけでなく、PDF、ZIP、音声、動画などもアップロードできます。ただし、ファイル形式によって注意点が異なります。

7-1. PDFをアップロードできない場合

PDFがアップロードできない場合は、まずファイルサイズを確認します。

PDFは画像を多く含むと容量が大きくなりやすく、アップロード上限を超えることがあります。

次に、ファイル名を半角英数字に変更します。

資料(最新版).pdfではなく、document-latest.pdfのように変更しましょう。

それでも失敗する場合は、PDFが破損していないか確認します。PDFを一度開き、別名で保存し直すと改善することがあります。

7-2. ZIPファイルをアップロードできない場合

ZIPファイルがアップロードできない場合は、ファイルサイズ上限、拡張子制限、セキュリティ設定を確認します。

ZIPは中身が見えにくいため、セキュリティプラグインやサーバー側で制限される場合があります。

また、ZIPの中に実行ファイルやスクリプトが含まれていると、セキュリティ上ブロックされることがあります。

配布目的でZIPをアップロードする場合は、必要なファイルだけを含め、ファイル名も半角英数字にしておきましょう。

7-3. SVG・WebP・HEICをアップロードできない場合

SVGは便利な画像形式ですが、コードを含められるためセキュリティリスクがあります。

SVGを許可する場合は、サニタイズ機能がある専用プラグインを使うのがおすすめです。

WebPは表示速度改善に役立つ形式ですが、WordPressやサーバー、プラグインの環境によって扱いが異なる場合があります。アップロードできない場合は、JPGまたはPNGに変換して試してください。

HEICはiPhoneで使われることが多い形式ですが、WordPress環境によってはアップロードや表示に対応していないことがあります。JPGに変換すると解決しやすいです。

7-4. 動画・音声ファイルをアップロードできない場合

動画や音声はファイルサイズが大きくなりやすいため、アップロード上限に引っかかりやすいです。

MP4動画をWordPressに直接アップロードすることはできますが、サーバー容量や転送量を大きく消費します。

動画はYouTube、Vimeoなどの外部サービスにアップロードし、WordPressには埋め込みで表示する方法も検討しましょう。

音声ファイルも、容量が大きい場合は圧縮や外部配信サービスの利用を検討します。

7-5. 許可されていない拡張子を追加する方法

許可されていない拡張子を追加するには、プラグインを使う方法と、コードで追加する方法があります。

初心者には、MIMEタイプを管理できるプラグインを使う方法が簡単です。

コードで追加する場合は、functions.phpに次のような記述を追加します。

PHP
function add_custom_upload_mimes($mimes) {
$mimes['svg'] = 'image/svg+xml';
return $mimes;
}
add_filter('upload_mimes', 'add_custom_upload_mimes');

ただし、functions.phpを直接編集すると、記述ミスでサイトが表示されなくなることがあります。子テーマやコード管理プラグインを使うと安全です。

また、許可するファイル形式は慎重に選びましょう。

7-6. セキュリティ上アップロードを避けるべきファイル形式

セキュリティ上、アップロードを避けるべきファイル形式もあります。

特に、PHP、EXE、JS、HTML、BAT、SHなど、実行可能なファイルやスクリプトは危険です。

これらを不用意にアップロード可能にすると、不正アクセスや改ざんにつながる可能性があります。

業務上どうしても配布したい場合は、ZIP化する、別サーバーで管理する、アクセス制限をかけるなど、安全な運用を検討しましょう。

8. WordPressのアップロード上限を確認・変更する方法

WordPressで大きなファイルを扱う場合は、現在のアップロード上限を確認し、必要に応じて変更します。

8-1. 管理画面から現在の最大アップロードサイズを確認する

管理画面の「メディア」から「新規追加」を開きます。

画面内に「最大アップロードサイズ」が表示されます。

この数値が、現在WordPressからアップロードできるファイルサイズの目安です。

ただし、実際にはPHPメモリ、実行時間、WAFなども関係するため、上限内のファイルでも失敗することがあります。

8-2. サーバーパネルでアップロード上限を変更する

多くのレンタルサーバーでは、サーバーパネルからPHP設定を変更できます。

「PHP設定」「php.ini設定」「PHP環境設定」などのメニューを探し、upload_max_filesizepost_max_sizememory_limitを変更します。

サーバーパネルで変更できる場合は、php.iniや.htaccessを直接編集するより安全です。

変更後は、WordPress管理画面を再読み込みし、最大アップロードサイズが変わったか確認します。

8-3. php.ini・.user.iniで変更する

サーバーによっては、php.iniまたは.user.iniで設定を変更します。

INI
upload_max_filesize = 64M
post_max_size = 64M
memory_limit = 256M
max_execution_time = 300
max_input_time = 300

.user.iniを使う環境では、反映まで数分かかることがあります。

すぐに反映されない場合は、時間を置いて再確認しましょう。

8-4. .htaccessで変更する

.htaccessで変更できる環境では、次のように記述します。

apache
php_value upload_max_filesize 64M
php_value post_max_size 64M
php_value memory_limit 256M
php_value max_execution_time 300

ただし、サーバーによってはこの記述が使えません。

500エラーが出た場合は、追加した記述を削除して元に戻してください。

8-5. wp-config.phpで変更する

WordPressのメモリ上限は、wp-config.phpで調整できます。

PHP
define('WP_MEMORY_LIMIT', '256M');

ただし、アップロード上限そのものはupload_max_filesizepost_max_sizeで決まるため、wp-config.phpだけを変更しても大きなファイルをアップロードできるようになるとは限りません。

8-6. 変更しても反映されないときの確認ポイント

設定を変更しても反映されない場合は、次の点を確認します。

編集したphp.iniが正しい場所にあるか、サーバーパネル側の上限に制限されていないか、.user.iniの反映待ちではないか、PHP-FPMやキャッシュの影響がないか、post_max_sizeupload_max_filesizeより小さくないか、サーバー会社が上限を固定していないか。

自分で判断できない場合は、サーバー会社に「WordPressの最大アップロードサイズを変更したい」と問い合わせるのが確実です。

9. それでもWordPressにアップロードできないときの最終チェック

ここまで試しても解決しない場合は、より詳しく原因を調べます。

9-1. サイトヘルスでエラーを確認する

WordPress管理画面の「ツール」から「サイトヘルス」を開きます。

サイトヘルスでは、PHPバージョン、REST API、サーバー環境、セキュリティ、パフォーマンスに関する問題を確認できます。

アップロードエラーに直接関係する警告が表示されている場合は、その内容を確認しましょう。

9-2. エラーログを確認する

サーバーのエラーログを見ると、アップロード失敗時の詳しい原因がわかることがあります。

たとえば、メモリ不足、権限エラー、PHPエラー、WAFブロックなどが記録されている場合があります。

エラーログはサーバーパネルから確認できることが多いです。

初心者には内容が難しい場合もありますが、サーバー会社に問い合わせるときにログを伝えると解決が早くなります。

9-3. FTP・ファイルマネージャーでuploadsフォルダを確認する

FTPまたはファイルマネージャーで、wp-content/uploadsフォルダを確認します。

年別・月別フォルダが作成されているか、直近のアップロードファイルが途中まで保存されていないか、フォルダの権限が正しいかを見ます。

フォルダが作成されていない場合、WordPressが書き込みできていない可能性があります。

9-4. 別の小さい画像でテストする

原因を切り分けるために、小さい画像でテストします。

たとえば、横幅800px程度、容量100KB程度のJPG画像を用意し、メディアライブラリからアップロードします。

小さい画像が成功する場合は、元のファイルサイズ、画像サイズ、画像形式が原因である可能性が高いです。

小さい画像でも失敗する場合は、WordPress設定やサーバー設定を疑いましょう。

9-5. 別のユーザー権限でアップロードを試す

ユーザー権限が原因でアップロードできない場合もあります。

管理者ユーザーでアップロードできるか確認しましょう。

投稿者、寄稿者、編集者などの権限では、サイトの設定やプラグインによってアップロード権限が制限されている場合があります。

複数人で運営しているサイトでは、権限管理プラグインの設定も確認してください。

9-6. 復元・移行直後に起きていないか確認する

サーバー移行やバックアップ復元の直後にアップロードできなくなった場合は、フォルダ権限、所有者、パス設定、データベース内のURL、PHPバージョンの違いなどが原因になりやすいです。

特に、移行前と移行後でサーバー環境が変わっている場合、以前は問題なかった画像処理が新環境で失敗することがあります。

移行作業を行った業者やサーバーサポートに確認しましょう。

9-7. 専門業者やサーバーサポートに相談する判断基準

次のような場合は、自分で作業を続けるより専門家に相談したほうが安全です。

管理画面に入れなくなった、.htaccess編集後に500エラーが出た、PHP設定を変更しても反映されない、エラーログの意味がわからない、サーバー移行直後から不具合が続いている、ECサイトや企業サイトなど停止の影響が大きい。

WordPress初心者が無理に設定ファイルを編集すると、アップロードエラー以外のトラブルにつながることがあります。

10. WordPressでアップロードエラーを防ぐための予防策

アップロードエラーは、日頃の運用である程度防ぐことができます。

10-1. アップロード前に画像を圧縮・リサイズする

画像は、アップロード前に圧縮・リサイズする習慣をつけましょう。

大きすぎる画像は、アップロードエラーだけでなく、ページ表示速度の低下にもつながります。

ブログ記事用の画像は、必要な表示サイズに合わせて調整してからアップロードするのがおすすめです。

10-2. ファイル名は半角英数字で統一する

ファイル名は、半角英数字とハイフンで統一しましょう。

日本語、空白、記号、絵文字、全角文字は避けるのが安全です。

サイト運営ルールとして、画像をアップロードする前にファイル名を整える習慣を作ると、トラブルを防ぎやすくなります。

10-3. 不要なメディアファイルを定期的に整理する

不要な画像やPDFを放置すると、サーバー容量を圧迫します。

定期的にメディアライブラリを確認し、明らかに不要なファイルを削除しましょう。

ただし、削除前にはバックアップを取り、サイト内で使われていないか確認することが大切です。

10-4. WordPress・テーマ・プラグインを定期的に更新する

WordPress本体、テーマ、プラグインは定期的に更新しましょう。

古い環境を使い続けると、アップロードエラーだけでなく、セキュリティリスクも高まります。

更新前にはバックアップを取り、可能であればステージング環境で確認してから本番に反映します。

10-5. サーバー容量とPHP設定を定期的に確認する

サーバー容量やPHP設定は、サイト運営を続けるうちに不足することがあります。

定期的に、ディスク使用量、最大アップロードサイズ、PHPメモリ、PHPバージョンを確認しましょう。

アクセス数やコンテンツ量が増えてきた場合は、上位プランや別サーバーへの移行も検討します。

10-6. セキュリティ設定を強くしすぎない

セキュリティは重要ですが、設定を強くしすぎると通常のアップロード処理までブロックしてしまうことがあります。

WAF、セキュリティプラグイン、アクセス制限を導入する場合は、管理画面で画像やPDFをアップロードできるか確認しましょう。

問題が起きたときに、どの設定を変更したか記録しておくことも大切です。

10-7. トラブル時に戻せるようバックアップを取る

WordPressでは、いつでも復元できる状態にしておくことが重要です。

特に、プラグイン更新、テーマ変更、PHP設定変更、サーバー移行、.htaccess編集の前にはバックアップを取りましょう。

バックアップがあれば、万が一アップロードエラーや表示崩れが起きても、元の状態に戻しやすくなります。

11. WordPressのアップロードに関するよくある質問

11-1. WordPressでアップロードできる画像形式は?

一般的によく使われる画像形式は、JPG、JPEG、PNG、GIF、WebPなどです。

ただし、実際にアップロードできる形式は、WordPressのバージョン、サーバー環境、プラグイン設定、MIMEタイプの許可状況によって異なります。

アップロードできない場合は、JPGまたはPNGに変換して試すのが基本です。

11-2. WordPressの最大アップロードサイズはどこで確認できる?

管理画面の「メディア」から「新規追加」を開くと、最大アップロードサイズが表示されます。

この数値は、サーバーのPHP設定やホスティング会社の制限によって決まります。

大きなファイルをアップロードしたい場合は、サーバーパネルやphp.iniで設定を確認しましょう。

11-3. 画像はアップロードできるのにPDFだけできない原因は?

PDFだけアップロードできない場合は、PDFのファイルサイズが大きすぎる、ファイル名に問題がある、PDFが破損している、セキュリティ設定でPDFが制限されているなどが考えられます。

まずはPDFを圧縮し、ファイル名を半角英数字に変更して再アップロードしてみましょう。

11-4. スマホからWordPressに画像をアップロードできない原因は?

スマホからアップロードできない場合は、画像サイズが大きすぎる、HEIC形式になっている、通信が不安定、ブラウザやアプリの不具合、ログイン状態の問題などが考えられます。

iPhoneの場合は、写真をJPGに変換してから試すと改善することがあります。

また、Wi-Fi環境を変える、ブラウザを変える、WordPressアプリではなくブラウザから試すといった方法も有効です。

11-5. プラグインを使わずにアップロード上限を増やせる?

可能です。

サーバーパネル、php.ini、.user.ini、.htaccess、wp-config.phpなどで設定を変更できる場合があります。

ただし、サーバー会社によって変更できる範囲は異なります。初心者は、まずサーバーパネルから変更できるか確認するのがおすすめです。

11-6. FTPでアップロードした画像がメディアライブラリに表示されないのはなぜ?

FTPでwp-content/uploadsに画像を入れただけでは、WordPressのデータベースにメディア情報が登録されないためです。

メディアライブラリに表示するには、WordPress側に画像を登録する必要があります。

FTPで大量アップロードした画像をメディアライブラリに登録したい場合は、専用プラグインを使う方法があります。

11-7. WordPress初心者はどこまで自分で対応すべき?

初心者が自分で対応しやすいのは、ファイルサイズの圧縮、ファイル名の変更、画像形式の変換、ブラウザ変更、プラグイン一時停止、メディアライブラリからの再アップロードまでです。

php.ini、.htaccess、wp-config.php、フォルダ権限、WAF設定の変更は、ミスをするとサイト全体に影響する可能性があります。

不安がある場合は、バックアップを取ったうえで作業するか、サーバーサポートや専門業者に相談しましょう。

まとめ

WordPressで画像・ファイルをアップロードできない原因は、ファイルサイズ、拡張子、ファイル名、サーバー容量、PHP設定、フォルダ権限、プラグイン干渉、WAF、バージョンの古さなどさまざまです。

まずは、表示されているエラーメッセージを確認し、画像だけの問題なのか、PDFやZIPなど他のファイルもアップロードできないのかを切り分けましょう。

初心者は、ファイルサイズを小さくする、JPGやPNGに変換する、ファイル名を半角英数字にする、別ブラウザで試す、メディアライブラリから直接アップロードする、といった基本的な対処から始めるのがおすすめです。

それでも解決しない場合は、WordPress側のプラグイン・テーマ設定、サーバー側のPHP設定、uploadsフォルダの権限、WAFやセキュリティ設定を確認します。

ワードプレスのアップロードエラーは、原因を順番に切り分ければ解決できるケースが多いです。焦って設定を変更するのではなく、バックアップを取ったうえで、簡単な確認から一つずつ進めていきましょう。