Для чего используется константа WP_USE_THEMES?
Относительно константы WP_USE_THEMES
, в Кодексе говорится:
Если вы используете Цикл WordPress (The Loop) внутри вашего собственного дизайна (и ваш дизайн не является шаблоном), установите WP_USE_THEMES в значение false.
Но какой реальный эффект оказывает на WordPress установка WP_USE_THEMES
в значение true или false? Я хотел бы знать, как она используется в WP.

Это используется только в template-loader.php
, чтобы определить, следует ли загружать файл темы или нет. Стандартная "последовательность загрузки" WordPress (запускаемая в wp-blog-header.php
) загружает плагины, анализирует URL, выполняет запрос к записям на основе URL и вызывает тему. Этот основной запрос записей обычно используется в "Цикле" (The Loop). Поэтому, если вы хотите использовать все преимущества анализа URL, но не отображать его с помощью темы сайта, вы можете установить WP_USE_THEMES
в false
, и тогда последний шаг не будет выполнен.

Спасибо, Ян, я изучу эти файлы подробнее, чтобы полностью разобраться.

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

Каким может быть практический пример ситуации, когда это используется? Зачем кому-то может понадобиться предотвращать загрузку темы?

@AlexanderRechsteiner: Возможно, ты реализовал бэкенд-действие, которое не должно возвращать полный HTML-ответ. Аналогично тому, как реализован cron, или API, который возвращает данные в другом формате?

Исходя из этой строки в документации The Loop:
<?php define( 'WP_USE_THEMES', false ); get_header(); ?>
Можно предположить, что цель использования WP_USE_THEMES
в данном примере — выполнить обработчики действий, зарегистрированные на хук get_header
, но не загружать фактический файл шаблона заголовка.
