Четвёртый митап технической серии в латвийской WordPress группе был посвящён отладке WordPress проектов. Katya Leurdo сделала доклад на тему «Debugging WordPress — from simple to xDebug». В ходе доклада рассмотрено применение различных методов отладки, начиная от простейшего вывода в лог до использования мощного отладчика xDebug. Материалы митапа доступны для скачивания по ссылкам внизу этой статьи.
Наибольшее внимание было уделено использованию xDebug, с показом его возможностей на примере кода.
В начале доклада было уделено внимание использованию констант режима отладки WordPress и работе с файлом debug.log. Упомянуты новые возможности, появившиеся начиная с WordPress 5.1.
Рассмотрены возможности отличного полупрофессионального средства для отладки — плагина Query Monitor. Докладчик подробно пояснил, какую информацию можно получить от данного плагина.
Debugging WordPress — from simple to xDebug: использование xDebug
Основная часть доклада была посвящена профессиональному средству отладки php — пакету xDebug. Умение работать с xDebug является неотъемлемым навыком современного девелопера WordPress проектов. Известные международные компании, разрабатывающие продукты на WordPress, требуют знания xDebug не только от девелоперов, но даже и от сотрудников технической поддержки.
В докладе даны краткие пояснения важных моментов процесса настройки xDebug на локальном компьютере. Детальные инструкции по настройке зависят от применяемых конфигураций программного обеспечения и доступны в виде многочисленных мануалов в Сети.
Основное внимание уделено рассмотрению и показу возможностей xDebug в действии. Это пошаговое выполнение кода, с заходом в функции и выходом из них, просмотр стека вызовов, просмотр переменных. Показаны возможности анализа локальных, глобальных и суперглобальных переменных, а также их модификации. Докладчик показал использование калькулятора в phpStorm: выполнение любых вычислений, получения результатов функций и даже выполнения произвольных кусков кода в калькуляторе.
Детально рассмотрено окно отладки в phpStorm и работа с ним. Пояснены все режимы использования точек останова, вплоть до самых сложных. Показано назначение и использование окон переменных, наблюдения, стека вызовов, вывода и консоли. Вживую показано пошаговое выполнение кода с заходом в функцию, выходом из неё, выполнением до курсора.
Процесс отладки рассмотрен на живом примере WordPress сайта. Применены калькулятор, с выполнением куска кода в нём, использование точек останова с условием, логированием и зависимых точек останова. Особое внимание уделено работе с окном наблюдения (watches), с добавлением произвольных выражений в него и вставке выражений из калькулятора. Показаны возможности доступа к любой глобальной переменной в ходе отладки, а также изменения переменных.
Докладчик также затронул проблемы отладки ajax и cron запросов. В ходе диалога приведены примеры использования xDebug в сложных проектах.
В заключение (как и в ходе доклада) были даны многочисленные ответы на вопросы.
Скачать презентацию митапа «Debugging WordPress — from simple to xDebug» можно здесь. Запись митапа доступна ниже.