Для чого потрібна константа WP_USE_THEMES?


35

Щодо WP_USE_THEMESконстанти, Кодекс заявляє :

Якщо ви використовуєте цикл всередині власного дизайну (а ваш власний дизайн не є шаблоном), встановіть WP_USE_THEMES значення false.

Але який фактичний вплив на WordPress від WP_USE_THEMESвстановлення значення true та false? Я хотів би знати, як це використовується WP.

Відповіді:


35

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


Дякую Яну, я вивчу ці файли далі, щоб повністю їх отримати.
mikkelbreum

1
Щоб уточнити, functions.phpфайл активної теми все одно буде завантажений. Не завантажуються лише шаблони теми.
JD

3
Що може бути практичним прикладом ситуації, коли це використовується? Чому хтось хоче запобігти завантаженню теми?
Олександр Рехштайнер

2
@AlexanderRechsteiner: Можливо, ви реалізували резервну дію, яка не повинна повертати повну відповідь HTML. Подібно до того, як реалізовано cron, чи API, який повертає дані в іншому форматі?
Ян Фабрі

Просто для додання відповіді в коментарях: імовірно, це вступило б у життя, якщо WordPress використовувався без голови (наприклад, через wp-cli).
Лорен Розен

0

Виходячи з цього рядка в документації Loop:

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

Я б припустив, що метою WP_USE_THEMESцього прикладу є запуск обробників дій, зареєстрованих на get_headerгачок, але насправді не виконувати файл шаблону заголовка.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.