roots / wp-stage-switcher
WordPress plugin that allows you to switch between different environments from the admin bar
Fund package maintenance!
roots
Installs: 393 454
Dependents: 2
Suggesters: 0
Security: 0
Stars: 367
Watchers: 26
Forks: 44
Open Issues: 1
Type:wordpress-plugin
pkg:composer/roots/wp-stage-switcher
Requires
- php: >=5.4.0
- composer/installers: ~1.0 || ~2.0
README
A WordPress plugin that allows you to switch between different environments from the admin bar.
Requirements
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.
Installation
This plugin must be installed via Composer. Add wp-stage-switcher to your project's dependencies:
composer require roots/wp-stage-switcher
Filters
bedrock/stage_switcher_colors
Customize 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', ]; });
bedrock/stage_switcher_visibility
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'); });
Support
Use the Roots Discourse to ask questions and get support.