Вопрос или проблема
У меня определены соответствующие константы для отладки в wp-config.php:
define('WP_DEBUG', true);
define('WP_DEBUG_DISPLAY', true);
define('WP_DEBUG_LOG', true);
Но они не работают. Когда я записываю что-то в файл журнала из моего плагина (даже без проверки WP_DEBUG === true
) вот так, ничего не происходит на экране, и файл debug.log также не найден:
error_log('test!');
Я уверен, что часть кода в плагине выполняется. В чем дело? Я использую WP 3.6.1. Спасибо.
В моем случае следующий код сработал. Вам следует ввести его в wp-config.php
выше /* That's all, stop editing! Happy blogging. */
:
@ini_set('display_errors', 1);
Ответ или решение
Если вы сталкиваетесь с проблемами при попытке включить отладку в WordPress с помощью констант WP_DEBUG
, WP_DEBUG_DISPLAY
и WP_DEBUG_LOG
, возможно, вам следует проверить несколько моментов.
-
Правильное определение констант: Убедитесь, что в вашем файле
wp-config.php
константы определены корректно. Обычно они должны выглядеть следующим образом:define('WP_DEBUG', true); define('WP_DEBUG_DISPLAY', true); define('WP_DEBUG_LOG', true);
Убедитесь, что эти строки находятся выше строки
/* That's all, stop editing! Happy blogging. */
. -
Отображение ошибок: Методы, которые вы используете для вывода ошибок, могут потребовать дополнительной настройки. Попробуйте добавить следующую строчку в
wp-config.php
, чтобы включить отображение ошибок:@ini_set('display_errors', 1);
Это заставит PHP отображать все ошибки и предупреждения на экране, что может помочь в диагностике.
-
Проверка настроек сервера: Убедитесь, что ваш веб-сервер настроен на запись логов ошибок и что у него есть соответствующие разрешения на запись в каталог, в котором WordPress установлен. Файл
debug.log
обычно создается в каталогеwp-content
. -
Проверка прав доступа: Убедитесь, что записи в файл
debug.log
разрешены, и у веб-сервера есть права на запись в папкуwp-content
. Если папка имеет недостаточные права, файлdebug.log
не будет создаваться. -
Конфликты с плагинами или темами: Иногда активные плагины или темы могут влиять на работу отладки. Попробуйте временно отключить все плагины и переключиться на стандартную тему (например, Twenty Twenty-One), чтобы определить, не вызывает ли конфликт со сторонними плагинами.
-
Проверка версии PHP: Убедитесь, что вы используете поддерживаемую версию PHP. Иногда устаревшая версия может быть причиной проблем с отладкой.
Если после выполнения всех перечисленных шагов отладка всё ещё не работает, вы можете попробовать следующее дополнительно:
- Используйте встроенные функции WordPress для отладки, например
log_message()
илиwp_die()
, чтобы увидеть, где именно происходит сбой. - Проверьте файл
.htaccess
на наличие неправильных правил, которые могут блокировать доступ к файлам.
Следуя этим шагам, вы должны быть в состоянии диагностировать и исправить проблемы с отладкой в WordPress.