Нахождение и устранение ошибок в WordPress: как пользоваться WP_DEBUG

Приветствую вас, уважаемые!

Сегодня мы поговорим об обнаружении и устранении ошибок в WordPress на вашем сайте. Не думайте что у вас их нет — их просто не видно. И мы сейчас поговорим об этом.

Нахождение и устранение дефектов в WordPress

Каждый правильный разработчик тем или плагинов обязан включить отладку багов перед тем как начать работу над новым проектом. На самом деле WordPress Codex очень настоятельно просит разработчиков включать режим отладки во время работы над своим кодом, который думаю запустить в общедоступное пользование.

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

Ко мне часто поступают вопросы про хостинг, которым я пользуюсь и поэтому решил указать хостинг в статье https://sprinthost.ru. Вы можете попробовать попользоваться хостингом 30 дней бесплатно. Чтобы понять, как будет работать Ваш сайт на этом хостинге просто перенести свой сайт (в этом поможет поддержка хостинга бесплатно) и и таким образом сможете понять подходит хостинг Вам или нет. На этом хостинге находятся сайты с 20 000 тысяч посещаемость и сайты чувствуют себя отлично. Рекомендую! Да, если делать оплату на 1 год то получаете скидку 25%. И что мне нравится - тех. поддержка всегда помогает в технических вопросах, за что им спасибо. Как Вы понимаете не всегда проходит всё гладко и нет желания, чтобы сайт не был доступен тем самым страдал трафик и доход.

В этом посте я расскажу про основные доступные средства отладки и покажу вам как легко ими пользоваться.

Нахождение и устранение дефектов с помощью отладки (WP_DEBUG)

Самый важный инструмент отладки в WordPress это же конечно WP_DEBUG.

Это логическая (булева) константа, включающая режим «отладки багов» в WordPress. Она прописана в файле wp-config.php, мирно лежащей в корне вашего WP.

Если установить значение «true», вы начнете видить сообщения об ошибках PHP и отладочные сообщения WordPress, в каких функциях и файлах найдены ошибки и их стоило бы исправить. Эти сообщения очень полезны для разработчиков.

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

Но вернемся к WP_DEBUG и вам просто нужно добавьте строчку, которая ниже в ваш файл wp-config.php

define( "WP_DEBUG", true );

Или в этом файле просто поменяйте значени константы «false» на значени «true». По дефолтным настройкам там прописано «false».

Отладчик предоставляет удобный инструмент для решения проблем если что-то не так пойдет на вашем сайте.

Важно знать что отладчик не следует использовать на вашем «живом» сайте. Хотя это полезная функция в процессе разработки, это может быть опасно делать на «живом» сайте, потому что текст ошибок PHP может раскрыть некоторые детали вашего кода или другую информации для посетителей вашего сайта.

WP_DEBUG_LOG — лог ошибок

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

Это очень полезная особенность если вы хотите проанализировать уведомления позже.

И возвращаясь к логу с ошибками (WP_DEBUG_LOG) просто добавьте нижеследующую строку в wp-config.php:

define( "WP_DEBUG_LOG", true );

Убрать ошибки вашего сайта с экрана поможет константа, имя которой WP_DEBUG_DISPLAY

Не хотите показывать ошибки на страницах своего сайта воспользуйтесь WP_DEBUG_DISPLAY.

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

По умолчанию прописано «true» — то есть показывать где образовываются ошибки и предупреждения. Измените на «false» и все ошибки скроются с экрана.

Используем также вместе с WP_DEBUG_LOG.

Используя эту особенность, также просто нужно добавить строку ниже во все тот же файл — wp-config.php:

define( "WP_DEBUG_DISPLAY" , false );

Запишем все вместе

Легко применять все 3 константы вместе, если вы хотите, чтобы включить режим отладки и регистрировать сообщения об ошибках, но скрыть отображаемые уведомления на вашем сайте:

// Включаем режим отладки
define( "WP_DEBUG", true );
 
// Укажите WordPress где будет лежать лог с ошибками /wp-content/debug.log
define( "WP_DEBUG_LOG", true );
 
// Выключаем отображение ошибок
define( "WP_DEBUG_DISPLAY", false );
 
// Нижний код скроет ошибки от отображения
@ini_set( "display_errors", 0 );

Не стоит забывать что WP_DEBUG для локального использования и его не надо использовать на «живом» сайте!

На сегодня все! До скорой встречи.

А у вас на сайте много ошибок если попробывать включить отладку багов?

Обо мне
Юрич:
Занимаюсь созданием сайтов на WordPress более 6 лет. Ранее работал в нескольких веб-студиях и решил делиться своим опытом на данном сайте. Пишите комментарии, буду рад общению.

Заказать сайт