7 Инструментов отладки WordPress для устранения неполадок

7 Инструментов отладки WordPress для устранения неполадок
7 Инструментов отладки WordPress для устранения неполадок

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

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

Среди проблем, с которыми вы можете столкнуться, – низкая производительность, неправильное или поврежденное содержимое, сообщения об ошибках и, что хуже всего, белый экран смерти (WSoD), который означает, что ваш сайт потерпел крах и требует немедленного вмешательства. Даже незначительные проблемы с производительностью – например, задержка менее 2 секунд – это то, что должно вас беспокоить, потому что это может (и будет) повредить вашей SEO-стратегии и вашему позиционированию в результатах поисковых систем.

А это напрямую выражается в уменьшении количества посетителей с каждым днем, потому что в наши дни быстрый ответ – это все, особенно для мобильных пользователей. Вот почему очень важно иметь инструменты, которые вы можете использовать в любой момент, когда вам покажется, что ваш сайт работает неправильно. И даже если он работает, всегда есть возможность улучшить его производительность или удобство использования.

Что такое отладка?

Отладка – это задача, которую выполняют разработчики для обнаружения и устранения ошибок (также называемых багами) в своих программах. Она выполняется с помощью специализированных инструментов, которые позволяют увидеть, что происходит внутри программы во время ее выполнения. Иногда самая сложная часть работы по отладке заключается в том, чтобы выяснить, какой именно компонент, команда или инструкция вызывает ошибку.

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

7 Инструментов отладки WordPress для устранения неполадок

WP_DEBUG

В WordPress есть встроенное средство отладки, которое часто упускают из виду. Это “флаг” под названием WP_DEBUG, который запускает режим отладки в WordPress всякий раз, когда он активирован. Когда вы активируете WP_DEBUG, создается журнал, в котором записывается вся активность вашего сайта. Читая этот журнал, вы можете узнать, что именно не работает правильно на вашем сайте WordPress.

Чтобы включить WP_DEBUG, вам нужно немного покодировать, отредактировав файл wp-config.php и добавив необходимые строки, чтобы дать команду вашему сайту записывать все действия в журнал. Эта задача не для всех: вам нужно быть очень внимательным при редактировании файла wp-config.php, потому что если вы ошибетесь в строке или даже в символе, ваш сайт может перестать работать. Кроме того, прежде чем что-то делать, сделайте резервную копию сайта/файлов. Если вы что-то испортите, вы сможете восстановить резервную копию и вернуть все на свои места.

Чтобы отредактировать файл wp-config.php, воспользуйтесь файловым менеджером вашего хостинг-провайдера или используйте FTP-клиент для загрузки файла и откройте его локально с помощью удобного вам текстового редактора. Файл находится в главном каталоге вашей установки WordPress. После того как вы его откроете, найдите строку, в которой определяется WP_DEBUG. Она должна выглядеть следующим образом:

define( 'WP_DEBUG', false );

Если такой строки нет, найдите следующий комментарий:

/* That’s all, stop editing! Happy blogging. */

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

define('WP_DEBUG', true); 
define('WP_DEBUG_LOG', true); 
define('WP_DEBUG_DISPLAY', false); 
@ini_set('display_errors',0);

Сохраните измененный файл и, если вы используете FTP, загрузите его на свой сайт. Затем попробуйте спровоцировать ошибку (или подождите, пока она произойдет) и проверьте файл debug.log. Вы найдете его в папке wp-content вашей установки WordPress. Вы можете открыть его с помощью текстового редактора и поискать сообщения об ошибках, которые показывают, что вызывает проблемы на вашем сайте. После этого вы должны отключить ведение журнала, изменив значения “true” на “false” во всех строках, которые вы добавили или изменили в файле wp-config.php.

Отчеты об ошибках WPDB

Если вы знаете или подозреваете, что проблемы возникают с базой данных вашего сайта, вы можете включить функцию WPDB Error Reporting. Это также требует некоторого кодирования. После включения функции сообщения об ошибках вы можете дать команду своему сайту начать отображать ошибки базы данных на экране. Не стоит делать это на живом сайте, если только вас не беспокоит, что ваши посетители будут получать сообщения об ошибках на своих экранах. Лучше использовать демонстрационный сайт (как описано ниже), где вы можете протестировать все, что хотите, не позволяя всем видеть, что происходит под капотом.

Чтение этих сообщений об ошибках или журналов регистрации требует определенных технических знаний, так же как, например, для чтения рентгеновского снимка требуются медицинские знания. Вам придется расшифровать некоторые жаргонные термины программирования, сетевых технологий или баз данных, но вы, вероятно, найдете корень проблемы, которая влияет на ваш сайт, а затем получите помощь от того, кто может решить эту конкретную проблему. Чтобы начать генерировать отчеты об ошибках базы данных, добавьте следующую строку в файл wp-config.php (таким же образом, как это было описано ранее для создания отладочного журнала):

define( 'SAVEQUERIES', true);

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

global $wpdb; 
print_r( $wpdb->queries );

После завершения отладки вам следует удалить эти строки, чтобы вернуть ваш сайт к нормальной работе.

Использование пробного сайта

Пробный сайт – это клон вашего реального сайта, на котором вы можете протестировать изменения или новые функции, прежде чем запустить их в работу. Это также хорошая идея использовать демонстрационный сайт для отладки проблем или мониторинга его поведения, поскольку он дает вам свободу опробовать все, что вы хотите, не мешая реальным пользователям вашего сайта. Важно, чтобы пробный сайт в точности отражал содержание и структуру вашего реального сайта. Всякий раз, когда вы обновляете свой сайт WordPress новым контентом или новыми аддонами (в основном плагинами и темами), вы должны обновлять свой пробный сайт копией реального. Таким образом, если на реальном сайте возникнет проблема, вы сможете воспроизвести ее в своей тестовой среде.

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

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

Монитор запросов

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

После установки и активации Query Monitor начинает показывать информацию о поведении вашего сайта в наиболее полезных формах. Например, он показывает суммарные запросы к базе данных, сгруппированные по функциям, плагинам или темам, которые их выполнили. Меню панели инструментов администратора показывает живую статистику текущей страницы со всей отладочной информацией, которая может понадобиться для оценки проблемы, которую необходимо решить. Используя Query Monitor, вы можете постепенно сужать поиск ошибок по плагинам или темам, пока не найдете ту, которая снижает производительность вашего сайта или вызывает сбой в работе. Как и WordPress, Query Monitor полностью бесплатен и имеет открытый исходный код.

Инструменты разработчика Firefox

Ранее известный как Firebug, Firefox Developer Tools – это специальная версия Firefox, предназначенная для разработчиков, предлагающая новейшие функции и инструменты для разработки. Она не предназначена специально для WordPress, но оказывается очень полезной для отладки веб-сайтов. Неизбежно сравнить Firefox Developer Tools с более популярным Chrome DevTools. При этом выделяется солидная компоновка Firefox.

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

С помощью инструмента “Инспектор” можно изучать и изменять HTML и CSS страницы, причем это можно делать как на страницах, загруженных локально в Firefox, так и на удаленном устройстве, например, в Firefox для Android. Веб-консоль показывает всю информацию о веб-странице, которая может вам понадобиться: JavaScript, сетевые запросы, CSS, предупреждения, сообщения об ошибках и информационные сообщения, явно регистрируемые кодом JavaScript. Она также позволяет взаимодействовать с веб-страницей путем прямого выполнения выражений JavaScript в контексте страницы.

New Relic

Являясь одним из крупнейших игроков в индустрии APM (мониторинг производительности приложений), New Relic представляет собой коммерческий продукт, который тысячи разработчиков по всему миру используют ежедневно для получения информации о производительности своих программных продуктов. Он имеет архитектуру плагинов, которая позволяет добавлять функциональность третьим лицам, что приводит к практически бесконечному спектру технологий, которые можно отслеживать с помощью этого инструмента.

При ценовом диапазоне от $9,37 до $200 за хост в месяц, оно предназначено для профессиональных задач отладки. Он также требует длительного обучения, поэтому, помимо того, что вы потратите деньги на решение, вам также придется потратить время на то, чтобы научиться им пользоваться. Пользователи New Relic ценят тот факт, что он легко интегрируется в приложения для APM и мониторинга инфраструктуры.

Debug Bar

Debug Bar – это набор плагинов, доступных через меню отладки на панели администратора WordPress, который показывает широкий спектр отладочной информации. Его опции включают консоль, шорткоды, константы, типы постов, cron, действия и фильтры, переходные процессы, удаленные запросы и список зависимостей скриптов и стилей. Это плагин с открытым исходным кодом, поэтому его можно использовать бесплатно. Главный плагин, Debug Bar, обеспечивает базовую функциональность, расширяемую остальными плагинами. Он работает со встроенными флагами отладки, предлагаемыми WordPress, такими как WP_DEBUG и SAVEQUERIES. Когда эти флаги активны, Debug Bar добавляет полезную отладочную информацию, такую как предупреждения PHP и запросы MySQL, избавляя вас от необходимости искать и читать файлы журналов.

Каждая опция в меню Debug Bar предоставляет свою долю возможностей для отладки. Консоль, например, предоставляет консоль, в которой вы можете запускать произвольный PHP-код, что отлично подходит для проверки содержимого переменных (среди прочих возможностей). Cron отображает информацию о запланированных событиях WordPress, таких как время следующего события, количество запланированных событий, список пользовательских запланированных событий и т.д. Действия и фильтры – это еще одна возможность отображения крючков, прикрепленных к текущему запросу. На вкладке Actions отображаются действия, подключенные к текущему запросу, а на вкладке Filters – все теги фильтров вместе с функциями, подключенными к каждому из них.

Отладка для всех

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

clickfraud, ООО “ИНТЕРНЕТ ЗАЩИТА”, ИНН 7806602123, ОГРН 1227800111769, info@clickfraud.ru
Просмотров: 0