In what order are plugins loaded in WordPress?
And within a particular plugin’s folder, what order is followed for loading?
to the First question:
wp-settings.php, WordPress first checks for any must-use plugins (plugins in the optional
mu-pluginsfolder) and loads those.
Then, if you’re running a multisite installation, it checks for plugins that are network-activated and loads those.
Then it checks for all other active plugins by looking at the
active_pluginsentry of the
wp_optionsdatabase table, and loops through those. The plugins will be listed alphabetically.
Here’s the order WordPress loads pretty much everything: http://codex.wordpress.org/Action_Reference#Actions_Run_During_a_Typical_Request
The thing is, it usually doesn’t matter what order each individual plugin is loaded in, because properly-written plugins will use WordPress hooks, which let you plug in functionality into specific points later in the WordPress startup. (Properly-written plugins will also prefix their functions and classes so that there aren’t any conflicts.)
More info on plugin API: http://codex.wordpress.org/Plugin_API/
to the Second question:
Totally depends on the plugin. WordPress only loads one file in the plugin, the one that’s usually named
the-plugin-name.php and contains the title, description, author, etc. at the top. It’s up to the plugin to load the rest of its files, using
wp_enqueue_script and whatnot.