wp_get_environment_type() – Retrieves the current environment type.

You appear to be a bot. Output may be restricted

Description

Retrieves the current environment type.

The type can be set via the WP_ENVIRONMENT_TYPE global system variable, or a constant of the same name. Possible values are 'local', 'development', 'staging', and 'production'. If not set, the type defaults to 'production'.

Usage

$string = wp_get_environment_type();

Parameters

Returns

string The current environment type.

Source

File name: wordpress/wp-includes/load.php
Lines:

1 to 50 of 50
function wp_get_environment_type() {
  static $current_env = '';

  if ( ! defined( 'WP_RUN_CORE_TESTS' ) && $current_env ) {
    return $current_env;
  }

  $wp_environments = array(
    'local',
    'development',
    'staging',
    'production',
  );

  // 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' );
    }

    _deprecated_argument(
      'define()',
      '5.5.1',
      $message
    );
  }

  // Check if the environment variable has been set, if `getenv` is available on the system.
  if ( function_exists( 'getenv' ) ) {
    $has_env = getenv( 'WP_ENVIRONMENT_TYPE' );
    if ( false !== $has_env ) {
      $current_env = $has_env;
    }
  }

  // Fetch the environment from a constant, this overrides the global system variable.
  if ( defined( 'WP_ENVIRONMENT_TYPE' ) && WP_ENVIRONMENT_TYPE ) {
    $current_env = WP_ENVIRONMENT_TYPE;
  }

  // Make sure the environment is an allowed one, and not accidentally set to an invalid value.
  if ( ! in_array( $current_env, $wp_environments, true ) ) {
    $current_env = 'production';
  }

  return $current_env;
}
 

 View on GitHub View on Trac