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

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メガバイトのこと)

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があるかどうかも判断してくれるので、重複してアップロードしようとして大事なファイルを上書きしてしまったりするトラブルを避けることができます。

.htaccessファイルといえば、サイト内の情報にアクセスする許可・拒否をしたり動作条件を変更したりする重要なファイル。「WP Htaccess Editor」はわざわざFTPを使って書き換えるのは面倒というときに管理画面から.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秒のこと)

設定するときの注意

容量の大きさに気を付ける
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のプラグインを使えば管理画面から操作することができます。

「CYSTEME Finder, a file explorer」プラグインはまるでパソコンのフォルダやファイルを操作するようにこれらの作業ができるようになる便利なプラグインです。

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

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

「Imsanity」はアップロードした画像を指定したサイズへ自動で変更すると同時に画像クオリティを変更して自動で圧縮する便利なプラグインです。Wordpressのアップロード上限ファイルサイズを超えていない画像であれば、そのままアップロードするだけでリサイズされます。

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

アップロードした画像から位置情報などのデータを削除するwordpressプラグイン「Exif-Remove-ImageMagick」は、画像が挿入される際にすべての画像情報を自動削除してくれる優れものプラグインです。これで安心してどんどん画像が含まれた投稿ができます。
トップへ戻る