I've made a content staging system for Magento, I'd love to know you're thoughts
Hi all,
I work at Limely, a Magento agency in the UK. For a while I've been building MageDrop, a tool for something our clients kept asking for: changing content across lots of entities, checking it all on the real storefront, then putting it live at the same moment.
Adobe Commerce has Content Staging, but on Open Source you usually end up editing live at midnight or doing it by hand and hoping nothing gets missed.
How it works
A companion module adds a "Stage to Release" & "Quick Preview" button to the admin edit forms for CMS pages, blocks, categories and products. You edit as normal. When you stage, the save is intercepted, nothing touches the live store, and only the fields you changed are saved to a release.
Preview the whole release on your actual storefront. This uses the X-Magento-Vary cookie, so full page cache keeps preview and live pages separate. Your customers never see staged content, and you see the real theme with real cache behaviour. It works on both Luma and Hyvä.
Deploy everything in one go, either right away or on a schedule (e.g. a sale that starts at 9am Friday). You can also set an end time, and it rolls back automatically.
Other bits
- Store view scope is supported, including "Use Default Value"
- A revision history is captured on every save, with field-level diffs and one-click rollback to any version
- Rollback puts back exactly what was there before the deploy, not just the last thing staged
- Scheduled deploys retry automatically if the store is briefly unreachable, and you get an email if a run fails
- Third-party form sections can be added through a section handler interface
Try it without installing anything
There's a live demo at https://www.magedrop.com/demo. You get the MageDrop dashboard and the admin of a real Magento store with the Luma sample catalogue. Edit a page, category or product, stage it to a release, preview it on the storefront, deploy it and roll it back.
The store is shared with other visitors. Deploys roll back automatically and everything resets overnight, so feel free to break things.
Install on your own store
composer require magedrop/magento2
Then you connect the store in the dashboard with a Magento integration. It only needs the MageDrop API permission.
It's free to use. I'd really like feedback from people running real stores: what breaks, what's missing, which entity types or extensions you'd want supported next.