Как удалить сообщения об ошибках в WordPress без плагинов

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

Почему важно скрывать сообщения об ошибках в WordPress

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

Кроме того, сообщения об ошибках портят внешний вид сайта и ухудшают пользовательский опыт. Особенно это критично на продакшен-сайте, где посетители не должны видеть внутренние детали.

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

Настройка вывода ошибок через wp-config.php

Самый эффективный способ контролировать сообщения об ошибках — настроить параметры в файле wp-config.php. Вот базовый пример, который полностью отключает отображение ошибок на сайте:

define('WP_DEBUG', false);
define('WP_DEBUG_LOG', false);
define('WP_DEBUG_DISPLAY', false);
@ini_set('display_errors', 0);

Объяснения параметров:

  • WP_DEBUG — основная константа, которая включает режим отладки в WordPress. Ее нужно установить в false для отключения всех отладочных сообщений.
  • WP_DEBUG_LOG — отвечает за запись ошибок в лог файл wp-content/debug.log. Если вам нужно логирование без вывода на экран, можно поставить true.
  • WP_DEBUG_DISPLAY — контролирует, показывать ли ошибки в браузере. Обычно ставится false на продакшене.
  • @ini_set('display_errors', 0); — дополнительно отключает отображение ошибок на уровне PHP.

Этот набор настроек — стандарт и рекомендуется для любого рабочего сайта.

Удаление сообщений ошибок в теме и плагинах

Если после установки настроек в wp-config.php все еще видны ошибки, возможно, тема или какой-то плагин принудительно выводит ошибки. В таком случае можно добавить дополнительный фильтр в файл functions.php вашей активной темы:

function wpdir_suppress_php_errors() {
    error_reporting(0);
    @ini_set('display_errors', 0);
}
add_action('init', 'wpdir_suppress_php_errors');

Этот код отключит все ошибки PHP на уровне раннего хука init. Однако использовать этот метод нужно с осторожностью, чтобы не скрыть важные сообщения во время разработки.

Пример логирования ошибок без вывода

Если вы хотите отключить показ ошибок, но сохранить их в логе, используйте такую конфигурацию в wp-config.php:

define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
@ini_set('display_errors', 0);

В этом случае все ошибки будут записываться в файл wp-content/debug.log, но не будут видны пользователям.

Проверка и очистка ошибок в базе данных

Иногда ошибки могут быть вызваны поврежденными записями в базе данных, устаревшими метаданными или конфликтующими плагинами. Чтобы минимизировать ошибки, выполните следующие шаги:

  • Оптимизируйте базу данных с помощью плагина Clearfy Pro или вручную через phpMyAdmin.
  • Удалите неиспользуемые плагины и темы.
  • Проверьте логи ошибок сервера на предмет повторяющихся ошибок.
  • Используйте стандартные функции WordPress для работы с метаданными, чтобы избежать конфликтов.

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

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

function wpdir_show_errors_for_admins() {
    if (current_user_can('administrator')) {
        @ini_set('display_errors', 1);
        error_reporting(E_ALL);
    } else {
        @ini_set('display_errors', 0);
        error_reporting(0);
    }
}
add_action('init', 'wpdir_show_errors_for_admins');

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

Использование плагина Clearfy Pro для управления ошибками

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

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

Резюме и рекомендации

Удаление сообщений об ошибках в WordPress — важная задача для безопасности и удобства пользователей. Рекомендуется:

  • Использовать настройки в wp-config.php для управления выводом и логированием ошибок.
  • Добавлять дополнительный код в тему, если плагины или тема принудительно выводят ошибки.
  • Логировать ошибки в файл, но не показывать их на сайте.
  • Использовать проверенные плагины, такие как Clearfy Pro, для удобного управления настройками.
  • Проверять базу данных и плагины на наличие ошибок, оптимизировать сайт.

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

Как добавить динамические параметры в URL в WordPress
30.03.2026
Как создать автоматический импорт постов в WordPress из внешнего источника
15.02.2026
Авто удаление записей и комментариев в WordPress через 7 дней
06.01.2026
WooCommerce: как правильно изменить URL товара без создания 301 редиректа
21.04.2026
Как избежать проблем с переадресацией в WooCommerce после изменения URL товара
17.04.2026