A WordPress plugin that allows you to switch between different environments from the admin bar.
You'll need to have ENVIRONMENTS and WP_ENV defined in your WordPress config.
The ENVIRONMENTS constant must be an array of 'environment' => 'url' elements:
$envs = [
'development' => 'http://example.dev',
'staging' => 'http://staging.example.com',
'production' => 'http://example.com'
];
Config::define('ENVIRONMENTS', $envs);WP_ENV must be defined as the current environment:
Config::define('WP_ENV', 'development');If you use Bedrock, WP_ENV is already defined in the config.
This plugin must be installed via Composer. Add wp-stage-switcher to your project's dependencies:
composer require roots/wp-stage-switcherCustomize the background colors for each environment in the admin bar menu. Returns an array of 'environment' => 'color' pairs.
Default colors:
[
'development' => 'firebrick',
'staging' => 'chocolate',
'production' => 'transparent',
]Example usage:
add_filter('bedrock/stage_switcher_colors', function ($colors) {
return [
'development' => '#dc2626',
'staging' => '#ea580c',
'production' => '#10b981',
];
});Control who can see the stage switcher in the admin bar. Defaults to is_super_admin().
Example usage:
add_filter('bedrock/stage_switcher_visibility', function ($visible) {
return current_user_can('manage_options');
});Use the Roots Discourse to ask questions and get support.
