Merging two Silverstripe instances?

Hi,

I’m wondering if there is any documentation or examples of how to merge two Silverstripe instances into a single site? I realise this will be a pretty manual process and there’s no one-size-fits-all answer, but maybe there is some high-level information out there somewhere…

Thanks,
Steve

I think it depends a lot on what you actually want to merge. The content, the theme, the page types, etc. There are lots of opportunities for conflict.

Can you provide a bit more detail about the sites and what the final product would be?

Sure. We have two sites that each have different content and functionality but are closely related in subject matter. Site A is the corporate marketing site, with lots of content pages and resources. Site B is a smaller site which has some content pages and also integrates with a few external APIs to provide users access to other services. Some of the content on the two sites overlaps, and we want to merge the existing content and functionality from the two sites into a single site, with a sensible information architecture and a consistent look and feel. This is a fairly large project that will involve doing a content audit as well as a redesign. The sites are currently using Silverstripe 3.4.1 and 3.0.3 respectively. Each site uses a number of addons and custom plugins/extensions, and each uses a different theme.

What I’m wanting to work out at the moment is what will be the best way to try and get existing content and functionality from the two sites into a single site. Assuming for the moment that there is no overlap in terms of addons, page urls etc, and ignoring the content/design changes for now, the options I can think of are:

  1. Merge Site B into Site A
    • Upgrade Site B to Silverstripe 3.4.1
    • Copy addons and custom code from Site B into Site A
    • Copy database records from Site B into Site A - handling remapping of IDs etc
    • Merge configuration as needed
  2. Merge Sites A and B into a new instance
    • Create a new Silverstripe 3.4.1 instance
    • Copy addons and custom code from Site A and B into the new instance
    • Copy database records from Site B into Site A - handling remapping of IDs etc
    • Update site configuration as needed
  3. Add content to a new instance manually
    • Create a new Silverstripe 3.4.1 instance
    • Copy content from Site A and B into the new instance, installing addons and extensions as needed
    • Update site configuration, create user accounts etc as needed

Will option 1 or 2 be feasible at all? Do I need to get the sites using a common theme before I can merge content? There are more than 2000 pages in Site A so I would prefer not to have to copy each one into a new instance manually. Site B has less than 50 active pages, so adding those pages manually would be doable if necessary.

Thanks,
Steve