2026年5月20日
2026年5月20日
wp-config.phpでメモリ制限を増やす方法【WP_MEMORY_LIMIT設定】
はじめに
WordPressにはPHPのメモリ制限を上書きするための独自定数WP_MEMORY_LIMITが用意されています。「Allowed memory size exhausted」エラーが発生した場合はまずwp-config.phpでこの設定を変更します。サーバーの設定を直接変更せずにWordPressレベルで対処できるため、共有ホスティングでも有効です。
WP_MEMORY_LIMITとは
WordPressはコアの読み込み時に@ini_set('memory_limit', WP_MEMORY_LIMIT)を実行してPHPのメモリ制限を上書きします。ただしサーバー側が厳しく制限している場合は効かないことがあります。
| 定数 | 用途 | デフォルト値 |
|------|------|------------|
| WP_MEMORY_LIMIT | フロントエンド・一般処理 | 40M(古いWP)/ 256M(新しいWP) |
| WP_MAX_MEMORY_LIMIT | 管理画面・アップデート処理 | 256M |
解決手順
ステップ1:wp-config.phpに設定を追加
// wp-config.phpに追加
// 「That's all, stop editing! Happy publishing.」の行より前に記述
define('WP_MEMORY_LIMIT', '256M');
define('WP_MAX_MEMORY_LIMIT', '512M');
ステップ2:現在のメモリ使用量を確認
// functions.phpに一時的に追加(確認後は削除する)
add_action('wp_footer', function() {
if (current_user_can('administrator')) {
$memory_used = memory_get_peak_usage(true) / 1024 / 1024;
$memory_limit = ini_get('memory_limit');
echo "<!-- Peak memory: {$memory_used}MB / Limit: {$memory_limit} -->";
}
});
ブラウザのデベロッパーツールでソースを確認してメモリ使用量を把握します。
ステップ3:設定が反映されているか確認
// PHPinfo(一時ファイル作成後すぐ削除する)
<?php phpinfo(); ?>
または管理画面の「ツール」→「サイトヘルス」→「情報」→「サーバー」でPHPメモリ制限を確認できます。
ステップ4:WP_MEMORY_LIMITが効かない場合
サーバー側でより厳しい制限がある場合はphp.iniまたは.htaccessで設定します:
; php.ini
memory_limit = 256M
# .htaccess(Apache)
php_value memory_limit 256M
ステップ5:推奨メモリ容量の目安
| 用途 | 推奨メモリ |
|------|-----------|
| 小規模ブログ(プラグイン少) | 128M |
| 通常のWordPressサイト | 256M |
| WooCommerce・大型サイト | 512M〜 |
| 大量インポート・バックアップ | 512M以上 |
注意事項
- 共有ホスティングでは上限が決まっており、それ以上は設定できません
- メモリを増やすだけでなく、不要なプラグインの削除も有効です
memory_limit = -1(無制限)は本番環境では非推奨です
まとめ
wp-config.phpにdefine('WP_MEMORY_LIMIT', '256M')を追加するのがWordPressでメモリ制限を増やす最も簡単な方法です。管理画面用にはWP_MAX_MEMORY_LIMITも合わせて設定しましょう。「サイトヘルス」でメモリ使用量を確認しながら最適な値に調整してください。
関連記事: