¿Para qué sirve la constante WP_USE_THEMES?

24 mar 2011, 14:08:02
Vistas: 35.1K
Votos: 39

Con respecto a la constante WP_USE_THEMES, el Codex indica:

Si estás usando The Loop dentro de tu propio diseño (y tu diseño no es una plantilla), establece WP_USE_THEMES a false.

Pero, ¿cuál es el efecto real en WordPress cuando WP_USE_THEMES se establece como true o false? Me gustaría saber cómo es utilizado por WP.

0
Todas las respuestas a la pregunta 2
5
40

Esto solo se utiliza en template-loader.php, para determinar si debe cargar un archivo de tema o no. La secuencia de arranque normal de WordPress (comenzando en wp-blog-header.php) carga los plugins, analiza la URL, ejecuta una consulta de publicación basada en la URL y llama al tema. Esta consulta de publicación principal se utiliza típicamente en "El Bucle". Por lo tanto, si deseas todas las ventajas del análisis de URL pero no mostrarlo utilizando el tema del sitio, puedes establecer WP_USE_THEMES en false y no ejecutará ese paso final.

24 mar 2011 14:31:17
Comentarios

Gracias Jan, estudiaré esos archivos más a fondo para entenderlo completamente.

mikkelbreum mikkelbreum
24 mar 2011 15:05:39

Solo para aclarar, el archivo functions.php del tema activo seguirá cargándose. Son solo las plantillas del tema las que no se cargan.

J.D. J.D.
31 ene 2014 22:33:43

¿Cuál sería un ejemplo práctico de una situación donde esto se usa? ¿Por qué alguien querría evitar que el tema se cargue?

Alexander Rechsteiner Alexander Rechsteiner
19 feb 2014 14:18:46

@AlexanderRechsteiner: Quizás implementaste una acción en el backend 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 Jan Fabry
19 feb 2014 17:42:20

Solo para añadir a la respuesta en los comentarios: presumiblemente, esto entraría en juego si WordPress se usara de manera "headless" (por ejemplo, a través de wp-cli).

Loren Rosen Loren Rosen
15 abr 2019 01:47:52
0

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

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

Asumiría que el propósito de WP_USE_THEMES en este ejemplo es ejecutar los manejadores de acciones registrados en el hook get_header, pero sin ejecutar realmente el archivo de plantilla del encabezado.

11 dic 2015 20:12:24