
WordPressでいろいろプラグインを入れているとメモリが不足してくることがあります。表示が遅くなったり、場合によっては真っ白な画面になったりしてしまいます。今回はそんな時にメモリ上限を上げる方法を紹介します。
見出し
WordPressのメモリ上限の書かれたファイル
それでは設定ファイルから見ていきましょう。
WordPressのメモリ上限の書かれたファイルは「default-constants.php」です。
Xserverの場合は、「ドメイン名 -> public_html -> wp-includes -> default-constants.php」にあります。
WordPressのメモリ上限の設定値
WordPressのメモリ上限の設定値は以下の2種類あり、それぞれ目的が異なります。
WP_MEMORY_LIMIT
- PHPが使用するメモリの上限を決める値
- デフォルトは40MB(シングルサイト)、64MB(マルチサイト)
- 「Allowed memory size of xxxxxx bytes exhausted」のようなエラーが発生している場合は上げる必要がある
WP_MAX_MEMORY_LIMIT
- 管理者タスクを実行時に、PHPが使用するメモリの上限を決める値
- デフォルトは256M
- 通常は管理者タスクはメモリを多く使うため、WP_MEMORY_LIMITより大きい値を設定する
詳しくはwordpress.orgの公式サイトを参照して下さい。
WordPressのメモリ上限を上げる
それでは実際に設定値を変更してみましょう。今回は、通常のシングルサイトだと仮定して、控えめにWP_MEMORY_LIMITを96MBに変更してみましょう。
// Define memory limits.
if ( ! defined( 'WP_MEMORY_LIMIT' ) ) {
if ( false === wp_is_ini_value_changeable( 'memory_limit' ) ) {
define( 'WP_MEMORY_LIMIT', $current_limit );
} elseif ( is_multisite() ) {
define( 'WP_MEMORY_LIMIT', '64M' );
} else {
define( 'WP_MEMORY_LIMIT', '96M' );
}
}
if ( ! defined( 'WP_MAX_MEMORY_LIMIT' ) ) {
if ( false === wp_is_ini_value_changeable( 'memory_limit' ) ) {
define( 'WP_MAX_MEMORY_LIMIT', $current_limit );
} elseif ( -1 === $current_limit_int || $current_limit_int > 268435456 /* = 256M */ ) {
define( 'WP_MAX_MEMORY_LIMIT', $current_limit );
} else {
define( 'WP_MAX_MEMORY_LIMIT', '256M' );
}
}
上記の色がついている所が設定値で、6行目がWP_MEMORY_LIMIT(マルチサイト)、8行目がWP_MEMORY_LIMIT(シングルサイト)、18行目がWP_MAX_MEMORY_LIMITになります。今回の場合はシングルサイトですから、8行目を40M -> 96Mに変更すれば完了です。
最後に
いかがでしたか?WordPressをある程度使いこなしてくるとどうしてもメモリ上限を上げる必要が出てきます。エラーが出ても焦らずに対処しましょう。
The following two tabs change content below.

世界を旅し日本を愛するエンジニア。大学でコンピュータサイエンスの楽しさを学び、日本の大手IT企業で働く中で、新しい技術やスケールするビジネスが北米にある事に気づく。世界に挑戦するための最大の壁が英語であったため、フィリピン留学およびカナダ留学を経て英語を上達させた。現在は日本在住でエンジニアとして働きつつ、次の挑戦に備えて世界の動向を注視している。挑戦に終わりはない。このブログでは、エンジニアやデザイナー向けの技術情報から、海外に留学したい人向けの留学情報、海外に興味がある人向けの海外旅行情報など、有益な情報を提供しています。
