[Wordpress] Как включить режим отладки.

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

WP_DEBUG

WP_DEBUG это PHP константа(постоянная глобальная переменная), которая может быть использована для включения режима отладки в WordPress. По умолчанию она выставлена в значение "false" и выставляется в значение "true" на этапе разработки, либо отладки. 

define( 'WP_DEBUG', true );
define( 'WP_DEBUG', false );

Обратите внимание, что значения true\false не должны быть выделены апострофами.

Включение режима отладки рекомендуем включать только на стадии разработки и отладки сайта.

PHP Errors, Warnings, and Notices

Включение WP_DEBUG отобразит все PHP ошибки, уведомления и предупреждения. Включение данной переменной изменит настройки РНР, которые, скорее всего, по умолчанию, отображают только критичные ошибки, либо "белый экран смерти".

 

Showing all PHP notices and warnings often results in error messages for things that don't seem broken, but do not follow proper data validation conventions inside PHP. These warnings are easy to fix once the relevant code has been identified, and the resulting code is almost always more bug-resistant and easier to maintain.

 

Устаревшие функци и аргументы.

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

WP_DEBUG_LOG

WP_DEBUG_LOG является дополнением к WP_DEBUG и будет сохранять информацию о всех ошибках в файл debug.log в папке /wp-content/. Это удобно, если вы хотите просмотреть все ошибки и предупреждения потом, либо с выключенным выводом ошибок на экран.

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

define( 'WP_DEBUG_LOG', true );

Для использования WP_DEBUG_LOG, переменная WP_DEBUG должна быть установлена в значение "true". Вывод ошибок на экран можно отключить переменной WP_DEBUG_DISPLAY. 

WP_DEBUG_DISPLAY

WP_DEBUG_DISPLAY это следующее дополнение к WP_DEBUG, которое позволяет котролировать вывод ошибок на экран. По умолчанию, данная переменная имеет значение true.

define( 'WP_DEBUG_DISPLAY', false );

SCRIPT_DEBUG

SCRIPT_DEBUG это константа, которая заставит Wordpress использовать "dev"- версии ядра CSS и JS файлов, а не уменьшенные версии, которые обычно используются. Это удобно, когда вы тестируете модификации встроенные .js и .css файлов. По умолчанию отключено.

define( 'eSCRIPT_DEBUG', true );

SAVEQUERIES

SAVEQUERIES позволяет сохранять запросы к базе данных в массив с последующим выводом на экран для анализа. 

define( 'SAVEQUERIES', true );

Запросы сохраняеются в глобальном массиве $wpdb->queries.

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

Example wp-config.php for Debugging

Нижеследующий код вставленные в файл wp-config.php вашего сайта включет запись всех ошибок, уведомлений и предупреждений в в файл debug.log в папке wp-content, но не отобразит ошибки на самом сайте.

// Enable WP_DEBUG mode 
define( 'WP_DEBUG', true ); 
// Enable Debug logging to the /wp-content/debug.log file 
define( 'WP_DEBUG_LOG', true ); 
// Disable display of errors and warnings 
define( 'WP_DEBUG_DISPLAY', false ); 
@ini_set( 'display_errors', 0 ); 
// Use dev versions of core JS and CSS files (only needed if you are modifying these core files) 
define( 'SCRIPT_DEBUG', true );

Важно! Данный код должен быть вставлен до строк /* That's all, stop editing! Happy blogging. */ в файле wp-config.php

Плагины для отладки

Так же, Wordpress имеет множество плагинов, котороые отобразят больше информации о внутренних, либо конкретных компонентах.

Источник: https://codex.wordpress.org/Debugging_in_WordPress