Pluggable functions are WordPress core functions that only load if a plugin or theme has not already loaded a replacement version with the exact same name. This functionality allows customization of certain default WordPress features, such as logging out or sending mail.
How is this done? After all themes and plugins have been executed, WordPress runs “pluggable.php” which tests to see if each of the pluggable functions already exist. For those that are not already defined, WordPress runs the default version. Another use of pluggable functions is for child themes to override default functionality of the parent theme.
A function is called “pluggable” if its code is wrapped in an if statement that tests for its existence before it is defined, as follows:
function wp_logout() {
/* more code here */
}
}
Pluggable functions were first introduced in WordPress 1.5.1. The full list of pluggable functions can be found here. No new pluggable functions are being introduced, however, because their functionality has been replaced with hooks (actions and filters) that can change the output of WordPress functions.