Developer Plugin v1.0: Helping WordPress developers develop

One of the great things about developing for WordPress is the number of tools available for developers. WordPress core ships with a bunch of useful features (e.g. WP_DEBUG) with many more built by the community (like our own Rewrite Rules Inspector and VIP Scanner) that make development and debugging a breeze. The hardest part is getting your environment set up just right: knowing what constants to set, what plugins to install, and so on.

That’s why we built-in the Developer plugin. It’s your one-stop resource to optimally configure your development environment by making sure you have all the essential settings and plugins installed and available.

If you’re a WordPress developer, we highly recommend installing this plugin in your development environment. You can download the plugin from the WordPress.org Plugins Directory or directly from your WordPress Dashboard (Plugins > Add New).

Here’s a quick walk-through:

On activation, the plugin prompts you to check what type of developer you are. This is used to configure the plugins checks.

The plugin does a quick check to see if you have the necessary plugins installed.

With two clicks, you can install and activate plugins.

The settings page (Settings > Developer) will check to make sure your environment is correctly configured including plugins, constants, and other useful settings.

If you’d like to check out the code and contribute, join us on Github; pull requests are more than welcome.

Are there any tools, tips, and tricks that you’re using that we’ve missed? We’d love to add them to the plugin. Let us know in the comments.

A while back I put together a Phing build script that gets a basic local environment set up for our developers. It makes a few assumptions — blog url needs to be “http://example.local” which then maps to a database named “example_local”, all local databases need to be usable by 1 MySQL user, whose name & password are hardcoded into a config. All local sites run from the same codebase they just point to different databases and use different themes.

There are a lot of improvements that could be made, but since our devs have working VIP dev environments now the incentive to make those improvements disappeared.🙂 A mu-plugin that proactively activated the installed plugins was one of them, and instead of the wp-config file using ini_set() to force configurations I wanted to make it throw errors if something wasn’t set right (preferably big obnoxious errors) to help people figure out how to set & control things on their own.