Home Plugins set the stage
Set the Stage logo

Set the Stage

by Ivaylo Draganov on WordPress.org

Quickly switch between environments (live, test, dev) from the admin bar.

(1)
The admin bar menu in action

The admin bar menu in action

Adds a menu to the admin bar to quickly identify different environments for a site (e.g. production and development) and easily switch to the same URL on other environments. Multi-site compatible for both sub-domain and sub-directory installations.

Configuration

The plugin has a convenient settings page but can also be configured programatically via a filter hook.

Setting environments via the WordPress admin interface

Navigate to “Settings > Set the Stage” in the WordPress admin to review and edit the configuration.

Setting environments via a WordPress filter hook

Hook to drgnff_wp_stage_switcher__environments and return an array with environments. Here’s an example filter function:

add_filter( 'drgnff_wp_stage_switcher__environments', function ($envs) {
    return [
        [
            'url' => 'https://example.com', // home url
            'title' => 'LIVE', // display name
            'color' => '#ffffff', // hex color (optional)
            'background_color' => '#ff0000', // hex color (optional)
        ],
        [
            'url' => 'https://example.com',
            'title' => 'DEVELOPMENT',
            'color' => '#ffffff',
            'background_color' => '#228b22',
        ],
    ];
});

Controlling visibility of the switcher

By default the switcher menu is displayed to all logged in users. By hooking to drgnff_wp_stage_switcher__should_display_switcher and returning a boolean you can control whether the switcher should be displayed.

Overriding the default environment

The default environment is used for the current site if it’s not in the list of environments. By hooking to drgnff_wp_stage_switcher__default_environment you can control the title and colors for the default environment.

A few notes on configuration

  • Filters have a precedence over manual configuration made in the settings page. If filters are used then relevant sections on the settings page are rendered as read-only.
  • For multi-site installations use the URLs of the main site.
  • The plugin initiates its logic on the plugins_loaded hook with priority 11. Thus filter hooks that affect the plugin must be added before that.
Active installations10+
Weekly downloads
16-5.88%
Version1.0.1
Last updated8/16/2023
WordPress version4.7
Tested up to6.3.5
PHP version7.4
Tags
environmentmenustageswitcher