Перейти к содержанию

4.8 Ядро WordPress. Функция wp_debug_mode()

Last updated on 23.05.2021

Данные функции располагаются в файле «load.php». Полный путь к нему таков:

корневая папка сайта/wp-includes/load.php

wp_debug_mode

Описание wp_debug_mode()

Функция «wp_debug_mode()» — проверяет режим работы CMS WordPress. Если система работает в режиме разработки, тогда определённым образом настраивается документирование и вывод ошибок, возникших при работе скрипта.

Сначала запускается функция «apply_filters()«. Она проверяет следует ли разрешить режим отладки или нет. Если результат её работы равен «FALSE», то дальнейшая проверка прерывается. В ином случае проверяется именная константа «WP_DEBUG». Эта константа объявляется в файле «wp-config.php«. При её значении равным «FALSE», скрипт работает в обычном режиме. При этом ошибки, что попадут в отчёт задаются функцией «error_reporting()«. Если значение этой константы равно «TRUE», тогда WordPress работает в режиме отладки , а значит необходимо отредактировать некоторые настройки.

Во-первых в отчет попадают все ошибки » error_reporting(E_ALL) «. Во-вторых проверяется константа «WP_DEBUG_DISPLAY». Она объявляется в файле «default-constants.php». Значение «TRUE» разрешает отображать сообщения об ошибках на экране монитора. Для этого используется функция «ini_set(‘display_errors’, 1)«. Значение «FALSE» не позволяет отображать ошибки. В этом случае используется «ini_set(‘display_errors’, 0)«.

Далее анализируем именную константу «WP_DEBUG_LOG». Значение данной константы переводится в строковый формат при помощи конструкции «(string)». Затем, при помощи функции «in_array()«, проверяем, присутствует ли в массиве «array()» значение этой константы. Если да, тогда указываем путь к лог-файлу, который хранится в переменной «$log_path». Иначе этой переменной присваивается значение «FALSE». Если «$log_path» представляет собой строку, тогда при помощи функции «ini_set()» CMS назначает журнал ошибок. Именно в нём будут вестись записи проблем, возникших при работе WordPress.

В конце функции «wp_debug_mode()» осуществляется последняя проверка. Если скрипт находится в процессе установки или же текущий запрос является AJAX/JSON запросом, тогда сообщения о возникших ошибках не отображаются.

Опубликовано в рубрике4. Файл "load.php"Ядро Wordpress