Для чего используется константа WP_USE_THEMES?

24 мар. 2011 г., 14:08:02
Просмотры: 35.1K
Голосов: 39

Относительно константы WP_USE_THEMES, в Кодексе говорится:

Если вы используете Цикл WordPress (The Loop) внутри вашего собственного дизайна (и ваш дизайн не является шаблоном), установите WP_USE_THEMES в значение false.

Но какой реальный эффект оказывает на WordPress установка WP_USE_THEMES в значение true или false? Я хотел бы знать, как она используется в WP.

0
Все ответы на вопрос 2
5
40

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

24 мар. 2011 г. 14:31:17
Комментарии

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

mikkelbreum mikkelbreum
24 мар. 2011 г. 15:05:39

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

J.D. J.D.
31 янв. 2014 г. 22:33:43

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

Alexander Rechsteiner Alexander Rechsteiner
19 февр. 2014 г. 14:18:46

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

Jan Fabry Jan Fabry
19 февр. 2014 г. 17:42:20

Дополняя ответ в комментариях: предположительно, это вступит в игру, если WordPress используется headless (например, через wp-cli).

Loren Rosen Loren Rosen
15 апр. 2019 г. 01:47:52
0

Исходя из этой строки в документации The Loop:

<?php define( 'WP_USE_THEMES', false ); get_header(); ?>

Можно предположить, что цель использования WP_USE_THEMES в данном примере — выполнить обработчики действий, зарегистрированные на хук get_header, но не загружать фактический файл шаблона заголовка.

11 дек. 2015 г. 20:12:24