WordPressのカスタマイズ方法やプラグインレビューを中心に、パソコン/動物/植物のことなどを紹介するホームページです

【WordPress】投稿や固定ページにアップロード挿入できるファイルや画像などの容量を増やす方法

公開日:2015年12月26日 使い方など

WordPressではサーバーにあまり負荷をかけないためやサイトの容量が大きくならないため、ひいてはサイトの表示速度を上げるためにアップロードできるファイルのサイズに制限を設けています。この制限を変更することで、添付ファイルのアップロードサイズを変更することができます。方法は大きく分けて2つです。どちらかを行えば基本的には設定変更が完了します。

いずれの方法も元々同じファイルが存在しないか、サーバーで独自の設定方法がないかなど確認した上で設定するようにしましょう。
いずれの方法も、該当のファイルが存在しない場合にはファイルを作ってから、設置する必要があります。

.htaccessに記述する

コピペ用コード

php_value memory_limit 60M ;スクリプトが確保できる最大メモリ(50Mは50メガバイトのこと)
php_value post_max_size 50M ;POSTデータに許可される最大サイズ(40Mは40メガバイトのこと)
php_value upload_max_filesize 30M ;アップロードできるファイルの最大サイズ(30Mは30メガバイトのこと)
【注意】コードをコピーして使用する前に必ずお読みください

この記事内にコードが記載されている場合、コードはそのままコピー(いわゆるコピペ)してお使いいただいても構いませんが、以下の件にご留意ください。

使用については自己責任でお願いします

コードの確認は私の管理するサイト、またはテスト環境で問題が起こらなかったものですので、お使いの環境での動作等を保証するものではありません。

万が一このコードを使用してサイトに重篤なトラブルが生じても当サイト、当サイト管理者は一切責任を負いません

コードの変換エラーなどにより動作しない場合、更新エラーが出る場合があります

コードをそのままコピーしても問題なく使えるよう文字列変換を行った上で掲載しておりますが、希に変換できていない場合があり、コードエラーとなることがあります

その場合には以下の方法で修正を行ってみてください

  1. コードの中に全角の記号が入っていませんか?
  2. 半角にすることで解消できます
  3. コードの中に全角の空白(スペース)がありませんか?
  4. 半角にすることで解決できます
  5. コードは合っているはずなのに更新できないときは
  6. 特にエラーの出た行内に日本語での文字列が入っている場合には全角での文字列があるということでエラーになる場合があり、Wordpressのエディタチェックではこれを「'」や「)」など閉じ子のエラーとして認識され更新できないことがあります。エラーとして返される行の先頭に空白がある場合には空白をなくすことできちんと認識され更新されるようになることが多いです。
  7. 「何かが間違っています...」と表示され、更新できないときは
  8. このエラーは本当に何がエラーなのかをWordpressのチェックが判断できない場合に発生します。解決策としてはその画面を開き直すことなのですが、その際希に元のコードがすべて削除されてしまう場合がありますので、今表示されているコードを一旦どこかへコピーしてからページの再読み込みをするようにしてやり直します。
    ※このエラーは不明なエラーなので予期せぬ動きをする可能性がありますので特に慎重な対処が必要です
これらのエラー対処については以下のページが参考になるかも知れません

コードを転載する場合には

ご自身のサイトで当ページで紹介しているコードを転載される場合には当ページへのリンクを入れていただきますようお願いいたします

php_value memory_limit ⇒ スクリプトが確保できる最大メモリ(50Mは50メガバイトのこと)
php_value post_max_size ⇒ POSTデータに許可される最大サイズ(40Mは40メガバイトのこと)
php_value upload_max_filesize ⇒ アップロードできるファイルの最大サイズ(30Mは30メガバイトのこと)

設定するときの注意

容量の大きさに気を付ける
php_value memory_limit>php_value post_max_size>php_value memory_limit
という順序で容量を決める必要があります。
簡単にいうと、添付ファイルのサイズ(php_value upload_max_filesize)よりも記事のサイズ(php_value post_max_size)が大きく、記事のサイズよりもメモリのサイズ(php_value memory_limit)が大きいということですね。
添付ファイルが含まれる記事のほうが文字があったりして大きいわけですから当然ですし、記事を処理するメモリの容量は当然記事サイズよりも大きいということです。

.htaccessファイルの置場

基本的にはWordpressがインストールされているフォルダの中へアップロードします。環境によっては、もう一つ上位の場所へ転送する必要があります。まずはWordpressがインストールされているフォルダの中へアップロードしてみてください。確認は管理画面からメディアのアップロード画面を開いてみて「最大アップロードサイズ」が設定したものに書き変わっていれば成功です。

FTPを使わずに設定する方法

通常はFTPというファイル転送を使って.htaccessファイルをアップロード/ダウンロードするのですが、Wordpressの管理画面から直接.htaccessを設定できるプラグインがあります。これを使うと.htaccessがあるかどうかも判断してくれるので、重複してアップロードしようとして大事なファイルを上書きしてしまったりするトラブルを避けることができます。

php.iniに記述する

コピペ用コード

memory_limit = 50M        ;スクリプトが確保できる最大メモリ(50Mは50メガバイトのこと)
post_max_size = 40M       ;POSTデータに許可される最大サイズ(40Mは40メガバイトのこと)
upload_max_filesize = 30M ;アップロードできるファイルの最大サイズ(30Mは30メガバイトのこと)
max_input_time = 60       ;スクリプトが入力をパースする最大時間(60は60秒のこと)
【注意】コードをコピーして使用する前に必ずお読みください

この記事内にコードが記載されている場合、コードはそのままコピー(いわゆるコピペ)してお使いいただいても構いませんが、以下の件にご留意ください。

使用については自己責任でお願いします

コードの確認は私の管理するサイト、またはテスト環境で問題が起こらなかったものですので、お使いの環境での動作等を保証するものではありません。

万が一このコードを使用してサイトに重篤なトラブルが生じても当サイト、当サイト管理者は一切責任を負いません

コードの変換エラーなどにより動作しない場合、更新エラーが出る場合があります

コードをそのままコピーしても問題なく使えるよう文字列変換を行った上で掲載しておりますが、希に変換できていない場合があり、コードエラーとなることがあります

その場合には以下の方法で修正を行ってみてください

  1. コードの中に全角の記号が入っていませんか?
  2. 半角にすることで解消できます
  3. コードの中に全角の空白(スペース)がありませんか?
  4. 半角にすることで解決できます
  5. コードは合っているはずなのに更新できないときは
  6. 特にエラーの出た行内に日本語での文字列が入っている場合には全角での文字列があるということでエラーになる場合があり、Wordpressのエディタチェックではこれを「'」や「)」など閉じ子のエラーとして認識され更新できないことがあります。エラーとして返される行の先頭に空白がある場合には空白をなくすことできちんと認識され更新されるようになることが多いです。
  7. 「何かが間違っています...」と表示され、更新できないときは
  8. このエラーは本当に何がエラーなのかをWordpressのチェックが判断できない場合に発生します。解決策としてはその画面を開き直すことなのですが、その際希に元のコードがすべて削除されてしまう場合がありますので、今表示されているコードを一旦どこかへコピーしてからページの再読み込みをするようにしてやり直します。
    ※このエラーは不明なエラーなので予期せぬ動きをする可能性がありますので特に慎重な対処が必要です
これらのエラー対処については以下のページが参考になるかも知れません

コードを転載する場合には

ご自身のサイトで当ページで紹介しているコードを転載される場合には当ページへのリンクを入れていただきますようお願いいたします

設定するときの注意

容量の大きさに気を付ける
memory_limit>post_max_size>upload_max_filesize
という順序で容量を決める必要があります。
簡単にいうと、添付ファイルのサイズ(upload_max_filesize)よりも記事のサイズ(post_max_size)が大きく、記事のサイズよりもメモリのサイズ(memory_limit)が大きいということですね。
添付ファイルが含まれる記事のほうが文字があったりして大きいわけですから当然ですし、記事を処理するメモリの容量は当然記事サイズよりも大きいということです。

タイムアウト時間を設定する
max_input_time は、タイムアウトしない程度に設定します。これはサーバーがハングアップしないようにする設定で、なるべく小さ目な数字を入れておくようにします。この時間よりもサーバーのタイムアウトのほうが早いと最悪の場合サーバーに高負荷をかけていると判断されて、特に無料のサーバーや低価格なサーバーなどではサイトを凍結されたりすることもあるので注意が必要です。

php.iniファイルの置場

基本的にはサーバーの最上位フォルダ(ルートフォルダ)へアップロードします。サーバーによってはここにアクセスできない場合がありますので、そのときは.htaccessでの設定を検討してみてください。確認は管理画面からメディアのアップロード画面を開いてみて「最大アップロードサイズ」が設定したものに書き変わっていれば成功です。

FTPを使わずに設定する方法

通常はFTP接続を使ってファイルを転送するのですが、Wordpressのプラグインを使えば管理画面から操作することができます。

※余談ですが、このプラグイン使うと普段ルートフォルダに入れないサーバーでもルートフォルダ内の操作ができることがあります。

特に大きなファイルはないけどできるだけ画像に使うファイルを小さくしたいという方は自動で画像を圧縮してくれるプラグインもあります

画像に含まれている位置や日付などのデータを自動で削除してくれるプラグインも併用をおすすめします

WordPressのカスタマイズ・不具合対応などご相談ください

Wordpressのカスタマイズ、不具合解消のご相談はすべてココナラのダイレクトメッセージからお受けしております。まずはこちらのバナーからお気軽にお問い合わせください。

【スポンサーリンク】