Bootstrap/Load: Remove the ability to alter the list of environment types in wp_get_environment_type().

The intention of `wp_get_environment_type()` is to provide a consistent means of identifying the environment type, not of identifying a specific environment.

Actual environments should fit within one of the existing types: `local`, `development`, `staging`, or `production`. That should cover the types that plugins and themes might be concerned about when toggling functionality. 

Props johnbillion, joostdevalk, TimothyBlynJacobs, jeremyfelt, batmoo, claytoncollie, Clorith, markjaquith, garrett-eclipse, GaryJ, elrae.
Merges [48894] and [48895] to the 5.5 branch.
Fixes #50992.
Built from https://develop.svn.wordpress.org/branches/5.5@48896


git-svn-id: http://core.svn.wordpress.org/branches/5.5@48658 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
Sergey Biryukov 2020-08-27 21:46:05 +00:00
parent de7200c257
commit a0096893c3
2 changed files with 15 additions and 11 deletions

View File

@ -138,7 +138,8 @@ function wp_check_php_mysql_versions() {
* If not set, the type defaults to 'production'.
*
* @since 5.5.0
* @since 5.5.1 The 'local' type was added.
* @since 5.5.1 Added the 'local' type.
* @since 5.5.1 Removed the ability to alter the list of types.
*
* @return string The current environment type.
*/
@ -156,17 +157,20 @@ function wp_get_environment_type() {
'production',
);
// Check if the environment variable has been set, if `getenv` is available on the system.
if ( function_exists( 'getenv' ) ) {
$has_env = getenv( 'WP_ENVIRONMENT_TYPES' );
if ( false !== $has_env ) {
$wp_environments = explode( ',', $has_env );
// Add a note about the deprecated WP_ENVIRONMENT_TYPES constant.
if ( defined( 'WP_ENVIRONMENT_TYPES' ) && function_exists( '_deprecated_argument' ) ) {
if ( function_exists( '__' ) ) {
/* translators: %s: WP_ENVIRONMENT_TYPES */
$message = sprintf( __( 'The %s constant is no longer supported.' ), 'WP_ENVIRONMENT_TYPES' );
} else {
$message = sprintf( 'The %s constant is no longer supported.', 'WP_ENVIRONMENT_TYPES' );
}
}
// Fetch the environment types from a constant, this overrides the global system variable.
if ( defined( 'WP_ENVIRONMENT_TYPES' ) ) {
$wp_environments = WP_ENVIRONMENT_TYPES;
_deprecated_argument(
'define()',
'5.5.1',
$message
);
}
// Check if the environment variable has been set, if `getenv` is available on the system.

View File

@ -13,7 +13,7 @@
*
* @global string $wp_version
*/
$wp_version = '5.5.1-alpha-48893';
$wp_version = '5.5.1-alpha-48896';
/**
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.