RAMP

Version 1.5.4    Updated 2014-06-17   
Documentation    Forums
Demo

Easy Content Deployment for WordPress. RAMP makes it easy to set up your content in your staging environment, then push those changes to your live site.

Easy Maintenance of Your Staging Environment

RAMP walkthrough graphic

WordPress is a powerful tool for building sophisticated websites. One of the challenges you face when managing a large website is how best to stage and review changes before pushing them live. While there are various tools for managing and deploying code, RAMP is the solution for staging and publishing WordPress content.

We consult with companies on best practices and tools for code and data deployment and, for many of them, RAMP is the best solution for staging and deploying content in separate environments. Get in touch with us to help design and implement the right solution for you.

Contact us

With RAMP you can make changes to your content (including custom post types and taxonomies), your menus, etc. and then selectively publish them to your production site. RAMP's batch selection allows you to stage multiple changes at once and only push those that are ready.

This means you can have two teams preparing separate content sections at the same time in the same staging environment, but you don't have to publish both at once.

Do you publish daily content but still have a need to stage and review larger site changes? RAMP makes that easy. You can continue to create content on your production site while staging your more significant site changes in your staging site. When you're ready, RAMP will push over just the changes you want and won't conflict with the daily content you've continued publishing on your production site.

Perhaps you want to enable a workflow where all content is staged before it is published? RAMP can do that too. Simply create your content on your staging site and use RAMP's "quick send" feature to easily create a batch and push it over to your production site.

I have been playing around with RAMP and I must say I really love it, this really should be a game changer in terms of making WordPress a true CMS.

Mike Dumka BaseFront Web Development

RAMP makes it easy to start publishing in an efficient and professional way.

Sarah Gooding WPMU.org
Nerds Enter Here

Developers

RAMP is not only a polished tool for business users, but a flexible framework for developers as well. Take a look at our example plugins on GitHub to see how you can extend RAMP for your specific needs.

RAMP supports all native WordPress content (including custom post types and taxonomies, menus, post meta, etc.) except for comments and unattached media. Media that is attached to a post or page is supported. Unattached media is not supported because WordPress does not maintain an "updated" timestamp for that content.

How RAMP Works

RAMP uses unique non-incrementing identifiers to sync content between your staging and production sites. For each content type, an appropriate identifier is used. Since RAMP supports a workflow of continued publishing in production while simultaneously creating content in a staging environments, it does not maintain auto-increment IDs between staging and production. This means that a page at staging.example.com/about might have a different "post ID" than it does at example.com/about. RAMP's deployment process handles the ID translation so that categories and posts match up properly, pages show up as expected in menus, etc.

If you use plugins or have custom code that stores post IDs as post meta, you will need to use our RAMP Post ID meta translation plugin to indicate those fields, or extend RAMP with your own custom code.

Code Deployment

RAMP is a content deployment tool, not a code deployment tool. Many useful tools for managing and deploying plugin and theme code changes already exist and RAMP works quite nicely in concert with them. We provide consulting and integration services if you'd like to explore code deployment options for your specific needs.

Staging Environment

In most situations, it will make sense to "blow away" your staging database every so often and refresh it from your production environment. Doing this is very straightforward, please refer to this documentation page on how to properly set up your staging environment.