Sharing your campaigns and promotions
Sometimes you need to share campaigns AND/or promotions to your colleagues or to Episerver Developer support service. The simplest way is to take screenshot of your promotion settings and let the receiver replicate that on their site. The "nuke" option is to send your entire site, including the sites and databases so they can set up the site themselves. Both are not perfect: The former will have more chances of error, and will be very tedious if you have a complex setting, OR multiple promotions. The latter is, well, too much work for both sides (not the mention the hassle of security and GDPR).
Is there a better, simpler way? Yes, there is.
The campaigns and promotions, in their true nature, are just CMS content. So you can just export and import them just like any other content.
To share your campaigns and promotions, just go your Admin view, Tools, Export data. Then select Export content items.
You can choose either Campaigns (which mean all campaigns and promotions), a specific campaign (with its promotions), or a specific promotion.
Then click Export to get a .episerverdata file contains your campaigns/promotions, which you can share to your colleagues or customers/partners.
They then can import your file into their site. An important note: they would have to import the file to the correct parent content.
- If you exported all campaigns, then it has to be imported to Root
- If you exported a specific campaign, then it has to be imported to Campaigns
- If you exported a specific promotion, then it has to be imported to a campaign (they would have to create one if none exists)
This is because of strict structure of promotional content, all campaigns has to belong to the campaign root (which is a child of Root page itself), and all promotions has to be long to one (and only one) campaign.
Voila, if you have 100 promotions to share, this can be done in just minutes!
A few notes:
- This only "transfers" data. If you have custom promotion content types/promotion processors, those have to be shared as well.
- If you have shipping promotions AND the shipping methods were created, either manually or by programatically, i.e. their data are not "synced" between environment, then the selected shipping methods will be lost. This is because the shipping method id (which is a guid) was randomly generated, and in new environment, the site can't match a selected shipping method with the ones currently available.
Nice one, experience gained!