Take the 2-minute tour ×
WordPress Development Stack Exchange is a question and answer site for WordPress developers and administrators. It's 100% free, no registration required.

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.

share|improve this question

1 Answer 1

up vote 17 down vote accepted

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 in wp-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 set WP_USE_THEMES to false and it will not execute that final step.

share|improve this answer
    
Thanks Jan, I'll study those files further to get it fully. –  mikkelbreum Mar 24 '11 at 13:05
    
Just to clarify, the active theme's functions.php file will still be loaded. It is only the theme template(s) that aren't loaded. –  J.D. Jan 31 at 20:33
    
What would be a practical example of a situation where this is used? Why would someone want to prevent the theme from loading? –  Alexander Rechsteiner Feb 19 at 12:18
1  
@AlexanderRechsteiner: Maybe you implemented a backend action, that should not return a full HTML response. Similar to how cron is implemented, or an API that returns the data in another format? –  Jan Fabry Feb 19 at 15:42

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.