Поради

Як вимкнути та увімкнути показ помилок у WordPress?

Скріншот нижче виглядає страшнувато 🙂 , але саме з таким текстом ви випадково можете зустрітись на сторінках вашого сайту, якщо певний плагін чи інший код викликатиме помилки PHP. З іншого боку, саме цей код буде вам корисний в процесі пошуку проблеми.

Типи PHP помилок (не тільки для WordPress)

В першу чергу, слід розуміти, що помилки бувають різного ступеню “критичності”. Найчастіше ви зустрінете так звані попередження “Warnings”, а також фатальні помилки “Fatal errors”.

Перший тип в більшості випадків не ламає ваш сайт повністю, а лише докучає виведенням певних даних про помилку десь на сторінках сайту чи адмін-панелі WordPress. В залежності від налаштувань вашого хостингу, такі повідомлення можуть за замовчуванням виводитись чи приховуватись.

У другому випадку ви можете просто бачити білий екран замість якоїсь із сторінок.

Як вимкнути виведення помилок

Наступний код вимикає виведення помилок на сторінках сайту. Його необхідно додати у файл wp-config.php, що знаходиться в корені вашого сайту. Найпростіше знайти в цьому файлі текст define('WP_DEBUG', false); і замість нього додати:

error_reporting(0); // Вимикаємо повідомлення про помилки
ini_set('display_errors', 0); // Вимикаємо виведення повідомлень про помилки на экран 
define('WP_DEBUG', false); 
define('WP_DEBUG_DISPLAY', false);

Як увімкнути виведення помилок?

Наступний код навпаки вмикає виведення помилок, що дозволить вам чи вашому вебмайстру швидше та простіше дізнатися про причини проблем на сайті, дуже допомагає, коли замість сторінки сайту показується просто біла сторінка без даних:

error_reporting(E_ALL); // вмикаємо повідомлення про помилки
ini_set('display_errors', 1); // вмикаємо виведення повідомлень про помилки на экран
define('WP_DEBUG', true);
define('WP_DEBUG_DISPLAY', true);

Плагіни для пошуку помилок у WordPress (дебаг та профілювання)

Для WordPress є кілька чудових плагінів, що дозволять більш глибоко зануритись у процес пошуку помилок та їх причин. Ось кілька популярних з них:

  • Query Monitor – виводить в футері доволі багато корисної інформації, зокрема про запити, виконані під час генерації поточної сторінки. Серед інформації наведено час генерації сторінки, скільки було SQL запитів, які саме та час їх виконання, скільки пам’яти витрачено, які хуки використано та інше.
  • Debug Bar – комплекс плагінів для дебагу. Це основний плагін, до якого можна підключати додаткові, що розширюють функціональність основного.
  • Log Deprecated Notices – записує інформацію про наявність застарілих функцій у WordPress чи їх параметрів, не залежить від значень константи WP_DEBUG, тобто працює завжди.
  • WordPress mu-plugin for debugging – альтернативний плагін на базі бібліотеки Kint.
  • Clockwork для WordPress – цікавий плагін для відладки через консоль браузерів Google Chrome чи Firefox, є можливість відладки AJAX-запитів.

А тут є ще більше корисних плагінів для відладки / debug вордпрес