Бывает так, что при работе с WordPress возникают ошибки и неполадки, например, когда вашему скрипту недостаточно оперативной памяти для его выполнения (он не укладывается в разрешенный объём), возникает ошибка «Allowed memory size of XXX bytes exhausted (tried to allocate YYY bytes)».

Суть ошибки заключается в том, что в консоли административной панели появляется:

Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 1966080 bytes) in /home/username/public_html/wp-includes/class-simplepie.php on line 5410.

Пути ошибки и цифры у всех разные, к тому же бывает так, что сайт не загружается, а браузер будет отображать тот же текст ошибки, и при попытке войти в административную панель будет тоже ошибка.

Причина возникновения такой ошибки одна – ваша CMS потребляет больше оперативной памяти, чем дает хостинг. Иногда такая ошибка появляется после обновления версии WordPress в процессе активации деактивированных перед обновлением WordPress плагинов.

Как исправить ошибку «Fatal error Allowed memory size of»?

Есть несколько способов решить эту проблему, поэтому вы наверняка подберете подходящий.

1. Самый простой, но долгий по времени, способ – обратиться в техническую поддержку вашего хостинга. Их специалисты исправят проблему и сайт снова будет работать. Но здесь есть особенность – через несколько дней ошибка может вернуться. В таком случае нужно будет прибегнуть к другим способам.

2. Второй способ – внести в файл .htaccess вашего сайта строку:
php_value memory_limit ’64M’

Если у вас нет файла .htaccess, его нужно создать. Для этого возьмем пустой файл txt (блокнота) и вписываем туда вышеуказанную строку. После этого переносим это текстовый файл с помощью FTP клиента на сервер и там переименовываем в .htaccess. Устанавливаем атрибуты 777, после этого проверяем, работает или нет. Поможет ли этот способ, зависит от хостинга.

3. Третий способ похож на предыдущий, но файлы будут отличаться. Нужно открыть index.php и добавить в него код: define(‘WP_MEMORY_LIMIT’, ’64M’);

После этого разрешенный объем оперативной памяти увеличится до 64 мб. Также вставьте этот код в файл конфигурации wp-config.php. Если в настройках сервера хостинг не отключил поддержку ini_set, то ошибка должна быть устранена.

4. Четвертый способ – самый эффективный, поскольку он устраняет первопричину ошибки, но, скорее всего, придется отказаться от использования плагина. В админ-панели заходим во вкладку «плагины» и начинаем деактивировать все плагины по очереди. После каждого проверяем наличии ошибки. Можно точно сказать, что вы найдете плагин, который вызывает ошибку.

Если ошибка при входе в админ-панель, и нет возможности править сайт, заходим на хостинг, открываем папку wp-content/plugins, затем копируем все плагины в свой компьютер и удаляем их друг за другом, проверяя после каждого, заработал ли сайт. Следует отметить, что этот прием может исправить и другие ошибки.

Но что делать, если плагин вам очень нужен, и отказываться от него не хочется? Тогда можно попробовать установить более раннюю или позднюю версию, или найти аналогичный.

Как избежать появления ошибок?

Чтобы не возникало ошибки памяти, нужно отслеживать, сколько памяти употребляет WordPress. Чтобы узнать эту информацию, нужно поискать в коде шаблона. Для этого в Админ-панели заходим в раздел “Внешний вид” – “Редактор” – выбрать файл functions.php или через файловый менеджер по адресу …/wp-content/themes/ваша тема/functions.php (открыть с помощью Notepad++ или похожей программой). Перед закрывающим тегом ?> вставляем в файл код:

function usage () {printf ((‘%d / %s’), get_num_queries (), timer_stop (0, 3)); if ( function_exists (‘memory_get_usage’) ) echo ‘ / ‘ . round (memory_get_usage ()/1024/1024, 2) . ‘mb ‘; } add_action (‘admin_footer_text’, ‘usage’);

Теперь в футере админ-панели WordPress будет выводиться информация об объеме потребляемой памяти. Еще вы увидите информацию о скорости загрузки страниц сайта и количество запросов к базе данных.

Если вы не можете самостоятельно исправить ошибку на сайте WordPress, обращайтесь к нам. Ваш сайт будет работать безупречно.

Если вам понравилась статья, поделитесь ею в социальных сетях

  • 29 сентября 2019