The migration of a Content Management Server Web site to SharePoint Server 2007 is unlike the upgrade of Windows SharePoint Services 2.0 to Windows SharePoint Services 3.0 or a SharePoint Portal Server 2003 site to SharePoint Server 2007 in that an extra step is required. Migrating a Content Management Server Web site involves two very distinct phases: content migration and code migration. This additional step-code migration-is required because any custom code in a Content Management Server Web site has been written against the Publishing API to interact with the Content Management Server Content Repository. SharePoint Server 2007 and Windows SharePoint Services use a completely different storage mechanism and API than what Content Management Server used. Furthermore, the Publishing API has not been modified to work with the SharePoint API; instead, it has since been retired. It is because of this technology shift that custom code written for Content Management Server Web sites will most likely not be compatible after a migration, and thus, an extra step to migrate the code is required.
In the content migration phase, the migration of content is managed by SharePoint Server 2007 using migration paths that are created by site owners. There are three different types of content migration:
What constitutes content in a Content Management Server Web site? Content Management Server content includes the actual pages in a site, site structure, permissions, templates, site metadata, and resources such as the following:
Resource galleries and resources
Template galleries and templates
Security rights groups and users
Once the content in a Content Management Server Web site has been migrated to SharePoint Server 2007, you are left with a functioning site with no branding or look and feel applied. The Content Management Server template objects are migrated as unbranded page layouts in SharePoint Server 2007 so that you have a working, but unbranded, site. The next step is to migrate the code and implement your site's branding.
In the code migration phase, the custom code in a Content Management Server Web site solution is written against the Publishing API, which is not supported in SharePoint Server 2007. Therefore, it's likely that all the code written for a Content Management Server Web site will have to be rewritten for SharePoint Server 2007. However, because many things that required custom code in Content Management Server, such as search and navigation customizations, are provided out-of-the-box in SharePoint Server 2007, you should not have to migrate 100 percent of the code in the Content Management Server solution.
As previously mentioned in the "Content Migration Phase" section, migrating the content in a Content Management Server Web site results in a plain, unbranded SharePoint site populated with content. The content migration process creates a page layout for each Content Management Server template, but it applies no branding. No code is migrated from the Content Management Server Web site solution. Once the content migration step has been completed, developers must address each page layout as well as create master pages to apply the desired site branding. In addition, any custom controls written for the Content Management Server Web site must be addressed.
The most common elements that need to be addressed are any custom placeholder definitions and controls that were included in the Content Management Server Web site. Although some placeholder controls-such as the HTML Placeholder Control and Single Image Attachment Placeholder Control-will migrate to SharePoint Server 2007 without issue, others have no SharePoint Server 2007 equivalent to migrate to. The XML Placeholder Control is the most common of these placeholders that do not have a SharePoint Server 2007 equivalent. Each XML Placeholder Control must be addressed by a developer after the migration and likely redeveloped as a field control-a new type of control used in page layouts.