wp_get_development_mode()
Gets the current development mode: core, plugin, theme, all.
The development mode is set in the wp-config.php file via the constant WP_DEVELOPMENT_MODE. For example:
define( 'WP_DEVELOPMENT_MODE', 'all' )
This function returns the value of the constant WP_DEVELOPMENT_MODE. The value is checked beforehand; if it does not meet the standard, an empty string will be returned.
The development mode in WordPress is separate from debug mode (WP_DEBUG) or the development environment wp_get_environment_type(). It does not affect error handling or debugging but is needed to execute or not execute something in development mode. For example, a plugin may check if the plugin development mode is enabled and NOT use caching for a specific section of code in this case.
Use wp_is_development_mode( $mode ) when you need to check if the site is in the specified development mode.
No Hooks.
Returns
String. The current development mode. One of:
corepluginthemeall- a special value indicating that all three development modes (core, plugin, and theme) are enabled.''(empty string) - development mode is disabled or the value of the constantWP_DEVELOPMENT_MODEis incorrectly set.
Usage
wp_get_development_mode();
Examples
#1 Disabling cache for plugin developers.
Suppose we write a plugin and want to make it so that in plugin development mode our plugin does not use caching, but in any other mode it does.// some code
/*
* Ignoring transit cache in 'core' development mode.
* This is to avoid interfering with the plugin developer's workflow.
*/
if ( ! wp_is_development_mode( 'plugin' ) ) {
$transient_name = 'wp_core_block_css_files';
$files = get_transient( $transient_name );
if ( ! $files ) {
$files = glob( wp_normalize_path( __DIR__ . '/**/**.css' ) );
set_transient( $transient_name, $files );
}
}
else {
$files = glob( wp_normalize_path( __DIR__ . '/**/**.css' ) );
}
// some code
Changelog
| Since 6.3.0 | Introduced. |