How to prepare for automated content migration to Sitecore
- Posted on May 22, 2018
- Estimated reading time 4 minutes
![Sitecore content migration](/-/media/images/blogs/tech-and-specs/sitecore-content-migration.jpg?la=en&vs=3&w=1120&hash=492FA2D73AEE3E438816BDF75EB3E81A)
This article was originally written by Avanade alum Eduardo Moraes
You’ve ruled out manual content migration and are ready to automate the process. In this post, we’ll cover how to progress through the key steps to take when preparing for an automated migration. They can be divided into three main areas:
- Understand your source
- Define your target
- Map them both
Understand your source to see your content history
As discussed in my previous blog post Manual vs. automated content migration to Sitecore: things to consider, you need to know first how you are going to access the content at your source. Determine what kind of APIs or direct access are available. Then, get to know its data model.
Ask yourself some questions to determine if your existing site is well structured. For example, when migrating news articles, is it possible to retrieve all metadata and content fields from the source separately? Are fields such as Title, Date, Short Description, Article Image, Author, Tags, or Article Content provided in separate fields on your source system or do you need to plan for some sort of string manipulation and transformation to separate these elements?
Understand how your source maps and organizes internal links. Are IDs used for each page or just direct URL paths? Are there query strings to be considered? What about dynamic elements on these pages? Is your content static or does it include components that are dynamically updated based on query string parameters or other variables?
What about the media assets (images, PDFs) used on your source? Is there an accessible repository for these elements? Do we need to crawl the site and download such assets? Are they provided by an external DAM?
Document everything you can learn about your source and add it to your plan. You will need it for the mapping that will be required later for the automated migration. Start by producing a content inventory which identifies all pages to be migrated, categorizing them by template and ensuring you have a way to uniquely identify each.
Define your target to anticipate where your content will go
With your source details documented, gather details about your target, which is the location where you are going to move your source content. Clearly define all Sitecore data templates and fields. Identify page compositions with all required renderings. The information architecture to be used in Sitecore should also be defined. In short, the final design (visual and technical) of your Sitecore implementation needs to be in place prior to mapping source and target and writing the scripts.
Map your source to your target to connect them
Once you have a clear understanding of your source content and your target solution in Sitecore, you can start to map them both, connecting the dots and defining what needs to be placed where by your automated migration scripts.
The elements to map include:
- Skeleton content tree in Sitecore based on your IA documents
- Upload of media assets to Sitecore Media Library where applicable
- Updates required to the presentation details of each page in the content tree to accommodate different components for different page setups
- The proper source to populate each field used on each item created (page level, component level, shared and configuration elements)
- How each internal link used on rich-text fields and link fields should be updated (done based on the relationship between your new IA and the Content Inventory created for the source content)
With all that mapped you can proceed either with a) creation of your scripts or b) configuration of existing automated migration tools (if possible and applicable, which is not always the case in most complex migration scenarios).
Once the scripts are run, remember to double-check your Experience Editor mode in Sitecore to ensure any required additional content updates will be easily made. It is also a good practice to have your scripts create a report log with any possible broken links and other issues that require manual fixes.
With all that in mind, you should be able to successfully automate the migration of your content to Sitecore and promote the results to a User Acceptance Testing (UAT) environment for your client to review and approve before promoting to production servers.
Need help planning and migrating your content to Sitecore? Contact the digital experts at Avanade for a smoother experience so you can focus on your next big brand moment.
Comments