Regarding the WP_USE_THEMES
constant, the Codex states:
If you are using The Loop inside your
own design (and your own design is not
a template), set WP_USE_THEMES to
false.
But what is the actual effect on WordPress from WP_USE_THEMES
being set to true or false? I would like to know how it’s used by WP.
This is only used in
template-loader.php
, to determine whether it should load a theme file or not. The normal “boot sequence” of WordPress (started inwp-blog-header.php
) loads the plugins, parses the URL, executes a post query based on the URL, and calls the theme. This main post query is typically used in “The Loop”. So if you want all the advantages of URL parsing but not display it using the site theme, you can setWP_USE_THEMES
tofalse
and it will not execute that final step.Based on this line in The Loop documentation:
<?php define( 'WP_USE_THEMES', false ); get_header(); ?>
I would assume that the purpose of
WP_USE_THEMES
in this example is to run action handlers registered to theget_header
hook, but not actually execute the header template file.