Wednesday, January 27, 2010

Content Management Alchemy with Import Frameworks

Over the next several blog posts, I will be revealing some incredible secrets our partners have shared with us as part of the Outstanding Solution program. As I mentioned before, I am utterly impressed with the work our partners do and the creative solutions they are devising in addressing client requirements. But rather than go through a laundry list of our Outstanding Partner accomplishments, I want to share with you an essential piece of CMS implementation practice that comes up over and over again in my discussions with partners: content import frameworks.

What is a content import framework? Most CMS projects require a strategy for moving content from a legacy system (such as a legacy CMS, a home-grown administrative tool or just static HTML pages) to Sitecore’s content repository. If you are familiar with the Sitecore API, you know that importing content into Sitecore is a piece of cake – literally, 5-10 lines of code can do most of the heavy lifting for you. But there are certain challenges that partners must address in every implementation: How do you migrate links from the existing site to the new site? How do you import media into the CMS and preserve links to media? How do you account for obsolete content or content that will have a new home in the information architecture? These can be tricky problems to solve, and that is where a content import framework comes in.

Two partners with outstanding import frameworks are Revere Group and Non-Linear Creations. Let’s consider a few issues that both of these partners shared with me:

  1. Hold on to your SEO. When sites are migrated from a legacy system to Sitecore, customers often want changes to their information architecture. This may be to address historic usability issues or because it is required for a major site redesign. The challenge here is that it is essential to let Google know that those old URLs have moved, not gone away.
  2. Update your links. As you may know, Sitecore has an incredible link generation technology that allows for multi-lingual, multi-site and multi-extension URLs. As your content gets imported into Sitecore, you need to parse the HTML content to ensure that the old links are pointing to the right location in the new information architecture and that they comply to the standards for Sitecore’s LinkManager.
  3. Load and link your media. As the content import takes place, media must be imported into Sitecore’s Media Library and links to this media must be updated.
  4. Know your sources. As part of the import process, partners need a good understanding of how to handle content from a variety of sources. Importing from HTML documents, for example, requires recognition of tag patterns; importing from databases requires an understanding of the database structure.

Sounds tricky, doesn’t it? That’s why it’s important to have a content import framework that packages many years’ of CMS implementation experience into tools, APIs and best practices that can be re-used on each project.

Now, we all would love a magic button that imports content. Unfortunately, no one is quite there yet. An import framework is not necessarily a cure-all for the inevitable pains of content migration. Both Revere Group and Non-Linear Creations shared with me that these frameworks are reusable tool sets, but they must always be modified for each individual client. Sometimes, even copy-and-paste is the best way to go. No two implementations are completely alike – an import framework creates efficiencies, but the migration process still requires careful analysis, configuration and coding.

If you want to learn more about these outstanding partners, each of whom has worked on many Sitecore projects over the years, I encourage you to check out their web sites.

Revere Group: http://www.reveregroup.com

Non-Linear Creations: http://www.nonlinearcreations.com