WordPress features a few different types and statuses for plugins, as shown in Figure 1 – 4. You need to understand the difference when administering and creating plugins for WordPress.
- Active — Plugin is active and running in WordPress.
- Inactive — Plugin is installed but not active. No code from the plugin is executed.
- Must – Use — All plugins installed in the wp – content/mu – plugins directory. All Must – Use, or MU, plugins are loaded automatically. The only way to deactivate an MU plugin is to remove it completely from the directory.
- Drop – ins — Core functionality of WordPress can be replaced by Drop – in plugins. These plugins are a specifi cally named PHP fi les located in the wp – content directory. If WordPress detects one of these fi les, it will be auto – loaded and listed under the Drop – in fi lter on the Plugin screen. Currently ten Drop – in plugins are available:
- advanced – cache.php — Advanced caching plugin
- db.php — Custom database class
- db – error.php — Custom database error message
- install.php — Custom installation script
- maintenance.php — Custom maintenance message
- object – cache.php — External object cache
- sunrise.php — Advanced domain mapping
- blog – deleted.php — Custom blog deleted message
- blog – inactive.php — Custom blog inactive message
- blog – suspended.php — Custom blog suspended message
The last four drop – in plugins are specifi c to the WordPress Multisite feature. A standard WordPress installation will have no use for these plugins.
When developing a new plugin, determine what type of plugin you want to create before you start the development process. Most plugins will be standard WordPress plugins, but occasionally you might need to create a Must – Use or Drop – in specifi c plugin.