wp_debug_mode()
Встановлює налаштування обробки помилок у PHP на основі того, які константи вказані wp-config.php файлі WordPress.
Ця функція викликається в ядрі на ранньому етапі (до підключення багатьох файлів і до хука mu_plugin_loaded ). Вона не призначена для прямого використання будь-де.
Використовує три константи:
- WP_DEBUG (за промовчанням false )
- WP_DEBUG_DISPLAY (за умовчанням true )
- WP_DEBUG_LOG (за промовчанням false )
Усі вони визначаються ранньою функцією wp_initial_constants() і можуть бути визначені у файлі wp-config.php .
WP_DEBUG
Якщо увімкнути WP_DEBUG (вказати значення true), то всі PHP помилки (нотатки та попередження) будуть виводитися на екран. WordPress також показує внутрішні нотатки, які створюються самим WordPress, коли використовуються застарілі функції або застарілі змінні функцій або коли змінні використовуються неправильно. Застарілі функції можуть бути видалені у пізніх версіях WordPress.
Важливо! Вимкнений WP_DEBUG не відключає показ усіх видів помилок! Тобто. при відключеному WP_DEBUG будуть показані (оброблені) такі типи помилок:
- E_CORE_ERROR
- E_CORE_WARNING
- E_COMPILE_ERROR
- E_ERROR
- E_WARNING
- E_PARSE
- E_USER_ERROR
- E_USER_WARNING
- E_RECOVERABLE_ERROR
Так, якщо наприклад на сервер по дефолту вказано показувати помилки і при цьому WP_DEBUG вимкнений, то ви все одно будите бачити помилки вказаних вище типів, наприклад WARNING.
Увімкнення WP_DEBUG не змінює значення інших констант. Тобто. якщо вимкнути WP_DEBUG, то WP_DEBUG_DISPLAY та WP_DEBUG_LOG збережуть свої дефолтні значення і на основі цих значень будуть виставлені PHP налаштування показу та логування помилок.
Розробникам настійно рекомендується включати WP_DEBUG під час створення тем і плагінів.
Докладніше про WP_DEBUG .
WP_DEBUG_DISPLAY
Коли WP_DEBUG_DISPLAY = true , WordPress показує помилку екрану.
Якщо вказати у wp-config.php :
define( 'WP_DEBUG_DISPLAY', true )
— (за замовчуванням) WP виводить (показуватиме) помилки на екран.define( 'WP_DEBUG_DISPLAY', null );
– то WP взагалі не вказуватиме значення для PHP опції display_errors, тобто. буде використано глобальне налаштування PHP (сервера).define( 'WP_DEBUG_DISPLAY', false );
— показ помилок буде відключений.
Показ помилок завжди відключається для запитів REST, AJAX або XML-RPC. Для них спрацьовує такий код ini_set( ‘display_errors’, 0 ) , але значення константи WP_DEBUG_DISPLAY не змінюється!
WP_DEBUG_LOG
Якщо увімкнути WP_DEBUG_LOG , помилки будуть записуватися у файл debug.log у папці контенту, зазвичай це wp-content .
З версії 5.1 значення цієї константи можна передати шлях до файлу лога, куди потрібно записувати помилки.
Хуки з функції
Приклади
#1 Прикладів немає.
Ця функція використовується ядром для керування помилками і не призначена для використання в розробці.
список змін
З версії 3.0.0 | Введено. |
З версії 5.1.0 | WP_DEBUG_LOG може бути файлом path. |