Если WordPress пишет об ошибке нехватки памяти, зависает редактор, не проходит импорт большого файла или тяжёлый плагин начинает сбоить, первое, что обычно проверяют, — лимит памяти. Но здесь важно не путать три разных уровня: лимит, который видит сама WordPress, ограничение PHP и потолок, заданный хостингом. Изменение одной строки в wp-config.php помогает не всегда, и это нормальная ситуация.
Ниже разберём, что именно можно увеличить, где это делать и как понять, что проблема действительно решена, а не просто перенесена в другое место.
Что именно увеличивается в WordPress
В WordPress за лимит памяти отвечают две константы:
WP_MEMORY_LIMIT— память для обычной работы сайта на фронтенде и в админке;WP_MAX_MEMORY_LIMIT— повышенный лимит для отдельных тяжёлых операций в админке, например при импорте, обработке изображений, обновлениях и некоторых задачах редактора.
Обе константы задаются в wp-config.php, но фактически WordPress может использовать только то значение, которое разрешено PHP и сервером. Если хостинг ограничивает PHP, WordPress не сможет превысить этот предел, даже если вы пропишете большее число.
Какие значения обычно ставят
Универсального числа нет, но на практике чаще всего используют такие ориентиры:
128M— минимально разумный уровень для небольших сайтов;256M— частый рабочий вариант для большинства сайтов с плагинами, визуальными конструкторами и WooCommerce;512Mи выше — только если проект действительно тяжёлый и хостинг это позволяет.
Не стоит бездумно ставить максимальное значение. Если сайт упирается в память из-за кривого плагина, бесконечного цикла или слишком тяжёлого запроса к базе, увеличение лимита лишь отложит проблему. Иногда это полезно как временная мера, но не как окончательное решение.
Как увеличить лимит памяти через wp-config.php
Если у вас есть доступ к файлам сайта, откройте wp-config.php в корне установки WordPress. Добавлять строки нужно до комментария /* That's all, stop editing! Happy publishing. */, иначе WordPress может их не прочитать.
Перед редактированием сделайте копию файла. Ошибка в синтаксисе wp-config.php легко приводит к белому экрану или полной недоступности сайта.
Для повышения лимита обычно добавляют такие строки:
define( 'WP_MEMORY_LIMIT', '256M' );
define( 'WP_MAX_MEMORY_LIMIT', '512M' );Если у вас уже есть одна из этих констант, не добавляйте вторую копию. В PHP повторное объявление константы вызывает предупреждения, а в некоторых конфигурациях это мешает загрузке сайта. Нужно изменить существующее значение, а не дублировать строку.
Практический смысл такой:
WP_MEMORY_LIMITвлияет на обычную работу сайта и админки;WP_MAX_MEMORY_LIMITполезен, когда обычной памяти хватает для входа в админку, но не хватает для тяжёлых операций внутри панели управления.
Когда нужно менять лимит PHP, а не только WordPress
Если после изменения WP_MEMORY_LIMIT ошибка не исчезла, проверьте лимит PHP. WordPress не может выделить больше памяти, чем разрешено на уровне интерпретатора PHP. В таком случае в логах или в сообщении об ошибке часто фигурирует именно Allowed memory size exhausted.
Где менять лимит PHP зависит от хостинга:
- в панели управления хостингом;
- в файле
php.ini; - в
.user.iniна некоторых серверах; - реже — через настройки PHP-FPM или отдельный профиль сайта.
Например, если в панели хостинга уже стоит ограничение 128M, а в wp-config.php вы прописали 256M, WordPress всё равно останется в пределах 128M. В такой ситуации нужно менять именно серверную настройку или обращаться в поддержку хостинга.
Для PHP типичный параметр выглядит так:
memory_limit = 256MНо редактировать его напрямую можно не на любом хостинге. Если у вас shared-хостинг, чаще всего безопаснее и быстрее открыть тикет в поддержку или найти соответствующий раздел в панели управления.
Как понять, что проблема упирается в ограничения хостинга
Есть несколько признаков, что WordPress уже сделал всё, что мог, а дальше упирается в сервер:
- вы увеличили
WP_MEMORY_LIMIT, но ошибка осталась прежней; - в сообщении об ошибке фигурирует значение ниже того, которое вы указали;
- хостинг не даёт сохранить более высокий
memory_limit; - после повышения лимита сайт начинает работать только до следующего тяжёлого действия, а затем снова падает;
- в логах PHP видно, что процесс завершён из-за нехватки памяти на уровне сервера.
В таком случае проблема не в WordPress как таковом. Возможны три сценария: лимит хостинга слишком низкий для вашего проекта, плагин потребляет слишком много памяти, либо задача просто слишком тяжёлая для текущего тарифа. Тогда помогает либо оптимизация, либо переход на более подходящий тариф, либо перенос части нагрузки на более мощный сервер.
Что делать, если памяти не хватает при импорте, редакторе или плагинах
Повышение лимита особенно часто помогает в трёх ситуациях:
- Импорт больших файлов. Импорт может временно потреблять больше памяти, чем обычная работа сайта.
- Падение редактора. Блочный редактор, конструкторы и сложные метабоксы иногда требуют больше ресурсов, чем ожидается.
- Тяжёлые плагины. SEO-инструменты, фильтры каталога, резервное копирование, импортёры и визуальные конструкторы могут резко увеличивать потребление памяти.
Если проблема возникает только в одном плагине, сначала проверьте его настройки и обновления. Иногда дело не в общем лимите, а в конкретной задаче внутри плагина. Если плагин стабильно съедает память даже на нормальном тарифе, это уже повод искать альтернативу или обсуждать с разработчиком оптимизацию.
Как проверить результат после изменения
После редактирования wp-config.php не ограничивайтесь тем, что сайт просто открылся. Нужно убедиться, что WordPress действительно видит новый лимит.
Самый простой способ — зайти в админку и открыть раздел Инструменты → Здоровье сайта. В информации о системе WordPress обычно показывает текущие параметры PHP и часть серверных ограничений. Если там отображается новый лимит памяти, значит настройка подхватилась.
Ещё один практический вариант — повторить действие, которое раньше падало: открыть редактор, запустить импорт или выполнить проблемную операцию в плагине. Если ошибка исчезла, но сайт при этом не начал вести себя нестабильно, изменение можно считать успешным.
Если вы работаете с логами, полезно временно включить запись ошибок в файл, а не вывод на экран. Для рабочего сайта это безопаснее, потому что посетители не увидят служебные сообщения. Но включать публичный вывод ошибок надолго не стоит: он может раскрыть пути к файлам, фрагменты кода и внутреннюю структуру сайта.
Когда не стоит поднимать лимит без разбора
Увеличение памяти — не универсальный способ лечения всех проблем WordPress. Есть ситуации, когда оно только маскирует причину:
- сайт падает из-за конфликта плагинов;
- в теме есть бесконечный цикл или тяжёлый запрос;
- PHP-версия слишком старая для используемых плагинов;
- на сервере проблемы с базой данных;
- хостинг сам ограничивает ресурсы процесса, даже если память формально повышена.
Если после повышения лимита сайт всё равно нестабилен, не продолжайте бесконечно поднимать значения. Лучше проверить логи ошибок, отключить подозрительные плагины, временно переключиться на стандартную тему и посмотреть, исчезает ли проблема. Это быстрее, чем пытаться компенсировать программную ошибку памятью.
Для большинства сайтов рабочая схема такая: сначала поднять WP_MEMORY_LIMIT до разумного уровня, затем проверить, хватает ли лимита PHP, и только после этого решать, достаточно ли текущего тарифа хостинга. Если сервер не позволяет увеличить память, WordPress здесь не виноват — нужно менять окружение или оптимизировать сам сайт.