¿Para qué es la constante WP_USE_THEMES?

35

Con respecto a la WP_USE_THEMESconstante, el Codex establece :

Si está utilizando The Loop dentro de su propio diseño (y su propio diseño no es una plantilla), establezca WP_USE_THEMES en falso.

Pero, ¿cuál es el efecto real en WordPress WP_USE_THEMESal establecerse en verdadero o falso? Me gustaría saber cómo lo utiliza WP.

Mikkelbreum
fuente

Respuestas:

35

Esto sólo se utiliza en template-loader.php, para determinar si se debe cargar un archivo de tema o no. La "secuencia de arranque" normal de WordPress (iniciado en wp-blog-header.php) las cargas de los plugins, analiza la URL, ejecuta una consulta de destino basado en la URL, y llama al tema. Esta consulta principal de correos se usa típicamente en "The Loop". Así que si quieres todas las ventajas del análisis de URL, pero no muestra usando el tema del sitio, se puede establecer WP_USE_THEMESque falsey no va a ejecutar ese paso final.

Jan Fabry
fuente
Gracias Jan, estudiaré más esos archivos para obtenerlos completamente.
mikkelbreum
1
Solo para aclarar, el functions.phparchivo del tema activo todavía se cargará. Solo se cargan las plantillas de tema.
JD
3
¿Cuál sería un ejemplo práctico de una situación en la que se usa esto? ¿Por qué alguien querría evitar que se cargue el tema?
Alexander Rechsteiner
2
@AlexanderRechsteiner: Tal vez implementó una acción de back-end, que no debería devolver una respuesta HTML completa. ¿Similar a cómo se implementa cron o una API que devuelve los datos en otro formato?
Jan Fabry
Solo para agregar a la respuesta en los comentarios: presumiblemente, esto entraría en juego si WordPress se usara sin cabeza (por ejemplo, a través de wp-cli).
Loren Rosen
0

Basado en esta línea en la documentación de The Loop:

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

supongo que el propósito de WP_USE_THEMESeste ejemplo es ejecutar controladores de acción registrados en el get_headergancho, pero no ejecutar realmente el archivo de plantilla de encabezado.

Kevin Wheeler
fuente