Как отлаживать ошибки PHP на сайте WordPress?

WordPress — одна из самых популярных систем управления контентом (CMS), доступных сегодня на рынке. Он построен на различных языках разработки, в основе которых лежит PHP. Каждый раз, когда пользователь посещает сайт WordPress, код PHP компилируется модулем PHP, установленным на сервере (Apache или Nginx). По сути, это означает, что во время обработки запросов пользователя может произойти множество ошибок PHP. Если это так, это указывает на проблему с кодом PHP. Следовательно, вы должны понимать базовые знания о том, как проверять эти ошибки PHP, прежде чем искать решение. В этой статье мы объясним, как отлаживать ошибки PHP на сайте WordPress, а также включить ведение журнала ошибок.

Ошибки PHP в WordPress

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

  • Пропуск точки с запятой в синтаксисе
  • Вызов неправильной переменной
  • Конфликт с другим плагином или даже с параметром сервера
  • Несовместимый плагин или тема с последней версией PHP

Не паникуйте, когда видите ошибки в интерфейсе браузера или в панели администратора. Поскольку вам необходимо часто обновлять ядро ​​WordPress, версию PHP, тему и плагины, часто возникают ошибки из-за совместимости и по другим причинам.

Почему вы должны отслеживать ошибки PHP?

Внимательное наблюдение за ошибками PHP на вашем сайте имеет решающее значение по двум основным аспектам.

  • Безопасность — информация об ошибках PHP может подвергнуть ваш сайт вредоносным атакам. Следовательно, понимание и исправление ошибок является обязательной задачей для поддержания безопасности и надежности веб-сайта.
  • Оптимизация — ошибки PHP могут снизить скорость вашего сайта, и если эти проблемы останутся незамеченными, они могут снизить производительность и потерять пропускную способность.

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

Правда остается, даже если внешне ваш сайт выглядит нормально, он может страдать от незаметных проблем с PHP, которые необходимо немедленно решать. И поэтому администраторы WordPress должны следить за ошибками PHP.

Отладка ошибок PHP в WordPress

В этой статье мы рассмотрим, как отлаживать ошибки PHP в WordPress двумя способами.

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

1. Отладка ошибок PHP вручную с помощью кода

Если вы разработчик или хорошо владеете одним или двумя языками программирования, этот метод будет намного проще. Возможно, это не самый быстрый вариант, поскольку вам придется писать несколько строк кода, но даже это делает его более интересным. В этом конкретном посте мы отредактируем код в Visual Studio Code, поскольку сайт размещен локально на LAMPP. Если ваш сайт уже работает, вы можете редактировать код через приложение File Manager или FTP.

Мы рассмотрим три основные константы PHP:

WP_DEBUG Включить ошибки отладки
WP_DEBUG_DISPLAY Отображение ошибок в веб-интерфейсе браузера
WP_DEBUG_LOG Включить запись ошибок в файл журнала

WP_DEBUG и WP_DEBUG_DISPLAY

На нашем тестовом сайте прямо сейчас на сайте WordPress не отображаются ошибки PHP, как показано на изображении ниже. Это потому, что по умолчанию WordPress предотвращает отображение ошибок в браузере, задав для параметра WP_DEBUG значение false.

Ошибка не отображается
Ошибка не отображается

Чтобы установить для отладки WordPress значение true, перейдите в корневую папку установки вашего сайта и найдите файл wp-config.php. Отредактируйте файл и проверьте, содержит ли он следующую строку.

define( 'WP_DEBUG', false );

Он должен выглядеть так, как показано на изображении ниже.

Включить отладку в WordPress
Включить отладку в WordPress

Если строка есть, просто измените значение WP_DEBUG на true. В противном случае вы можете вставить новую строку со значением WP_DEBUG как true. Кроме того, добавьте строку ниже, чтобы включить отображение ошибок PHP в браузере.

define( 'WP_DEBUG_DISPLAY', true );

Когда оба параметра включены, он должен выглядеть, как показано на изображении ниже.

Включить отображение ошибок
Включить отображение ошибок

Сохраните файл, чтобы применить изменения и загрузить обратно на свой сервер. Теперь, когда мы перезагружаем наш сайт, мы можем видеть ошибки, отображаемые на экране. Как видите, это предупреждающее сообщение, в котором упоминается, что у темы есть синтаксическая проблема, которая может вызвать ошибку в будущей версии PHP. Обратите внимание, что в среде localhost появляются некоторые ошибки PHP, которые не применимы к действующим сайтам.

Отображение ошибок PHP сайта в браузере
Отображение ошибок PHP сайта в браузере

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

Но сначала не забудьте отключить отображение ошибок, отредактировав значение WP_DEBUG_DISPLAY, как показано на изображении ниже. Оставьте значение WP_DEBUG равным true, чтобы мы могли регистрировать ошибки.

Отключить отображение ошибок
Отключить отображение ошибок

Журнал ошибок с помощью WP_DEBUG_LOG

Ниже приведены некоторые из ситуаций, в которых вы можете создать файл журнала ошибок WordPress:

  • Весь ваш сайт упал
  • Обратите внимание на пустой экран при попытке открыть сайт
  • Проблемы с производительностью вашего сайта
  • Появляется предупреждение с кодами состояния HTTP 401, 404 или 500
  • Если плагин или тема работает некорректно. Вы также можете рассмотреть возможность создания журналов ошибок, чтобы получить более подробную информацию о проблеме.

Чтобы записать ошибки WordPress в файл журнала, откройте файл wp-config.php и найдите строку определить ('WP_DEBUG_LOG,' истина);. Если его нет, вы можете вставить новую строку. Иногда строка также комментируется, и обязательно удалите комментарии и установите для параметра WP_DEBUG_LOG значение true, как показано на изображении ниже.

Включить журнал ошибок отладки
Включить журнал ошибок отладки

Сохраните файл и загрузите обратно на свой сервер. Теперь перезагрузите сайт в браузере. WordPress создаст файл журнала с именем debug.log в каталоге wp-content, в который будут записаны все ошибки PHP на вашем сайте.

Просмотр журнала ошибок отладки
Просмотр журнала ошибок отладки

Когда мы открываем файл, вы видите, что он содержит все ошибки, которые отображались на нашем сайте.

Журналы ошибок сайта
Журналы ошибок сайта

Это может быть весьма кстати, особенно когда вы работаете в реальной среде и не хотите, чтобы пользователи видели ошибки на своих экранах. Затем вы можете проверить и исправить эти ошибки «за кулисами», не затрагивая реальных пользователей.

2. Отладка ошибок PHP с помощью плагинов

Хотя описанный выше метод прост, вам необходимо получить доступ к серверу из учетной записи хостинга или удаленно, используя FTP для редактирования wp-config.php. К счастью, вы можете отлаживать ошибки PHP в WordPress, используя различные типы плагинов. Здесь мы обсудим следующие два плагина:

  1. Плагин отладки WP
  2. Плагин Query Monitor

Отладка ошибок PHP с помощью плагина отладки WP

В Отладка WP plugin — это бесплатный плагин WordPress, который запускает режим отладки WordPress и позволяет вести журнал ошибок. При активации этот плагин устанавливает константы отладки в wp-config.php и удаляет их при деактивации. При возникновении проблем возникает исключение PHP. Эти константы включают:

define( 'WP_DEBUG'; true );
define( 'WP_DEBUG_LOG'; true );
define( 'SCRIPT_DEBUG'; true );
define( 'SAVEQUERIES'; true );

Когда плагин деактивирован, предпринимаются все усилия для восстановления состояния уже существующих констант. Тем не менее, настройки по умолчанию и все сохраненные настройки восстанавливаются при повторной активации плагина. Плагин также имеет раздел отладки, в котором вы можете настроить константы отладки. Для начала;

  • Перейдите в панель управления WordPress и нажмите меню «Инструменты».
  • Щелкните подменю «Отладка WP».
  • Прокрутите вниз и выберите константы отладки, которые вы хотите применить на своем сайте.
  • Нажмите кнопку «Сохранить изменения», чтобы применить изменения, как показано на изображении ниже.
Настройки плагина отладки WP
Настройки плагина отладки WP

Отладка ошибок PHP с помощью подключаемого модуля Query Monitor

Монитор запросов — это бесплатный плагин WordPress, который помогает веб-администраторам анализировать запросы веб-страниц и веб-страниц. Он также предупредит вас о серьезных ошибках PHP среди множества его применений. Вы увидите новый элемент в верхней панели администратора после его установки и активации. Когда он определяет критическую (PHP) проблему, панель инструментов становится красной, как показано на изображении ниже.

Верхняя панель монитора запросов
Верхняя панель монитора запросов

Эта панель инструментов содержит раскрывающееся меню с несколькими параметрами, которые вы можете использовать для управления своим сайтом WordPress. Однако в этом посте мы сосредоточимся только на ошибках PHP. Наведите указатель мыши на недавно появившуюся панель инструментов «Монитор запросов» и щелкните «Ошибки PHP». Откроется окно со всеми ошибками PHP на вашем сайте WordPress, как показано на изображении ниже.

Ошибки монитора запросов
Ошибки монитора запросов

Кроме того, вы можете установить файл cookie аутентификации, который позволяет вам просматривать выходные данные Query Monitor, когда вы не вошли в систему или когда вы вошли в систему как другой пользователь. Для этого выполните следующие действия:

  • Перейдите в раздел «Плагины» на панели инструментов WordPress.
  • Нажмите на опцию «Настройки» под плагином Query Monitor.
  • На вашей панели администратора появится окно консоли разработчика.
  • Нажмите «Установить файл cookie для аутентификации».
Установить файл cookie для аутентификации
Установить файл cookie для аутентификации

Заключение

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

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *