Best Practices for Migrating a Legacy-Based CMS to Drupal
-
Upload
acquia -
Category
Technology
-
view
5.335 -
download
1
Transcript of Best Practices for Migrating a Legacy-Based CMS to Drupal
Best Practices for Migrating a Legacy-Based CMS to Drupal
Paul ChasonManaging Partner
Mediacurrent
Bryan HouseMarketing Director
Acquia
© 2009 Acquia, Inc. All rights reserved.
Agenda
IntroductionPreparing to migrate legacy contentUnderstanding Drupal conceptsImporting content into DrupalCase study – In-Fisherman.comHow Acquia can helpQuestions
Drupal Gaining Market Momentum
Social Publishing Software =>Participation-Driven
Websites
blogs /wikis
forums / comments
ratings
tagging
users
social networks
workflow
taxonomy
search
RSS
content
analytics
ContentMgmtSystems
SocialSoftware
Tools
SocialPublishingSystems
Drupal & ROI
Reduce costs– Zero $$ software
licensing– Reduced maintenance
costs
Deploy websites faster– Modular architecture– Configurable, not custom
Repeatable infrastructure– Multisite support– Turnkey site deployment
© 2009 Acquia, Inc. All rights reserved.
Mediacurrent
Paul Chason– Managing Director, Mediacurrent
Mediacurrent Company Overview
Mediacurrent Company Overview
Atlanta, GA based web consultancy exclusively focused in Drupal
Mediacurrent Company Overview
Atlanta, GA based web consultancy exclusively focused in Drupal
Full-service Drupal provider – front and back end development; specialize in enterprise level Drupal implementations
Mediacurrent Company Overview
Atlanta, GA based web consultancy exclusively focused in Drupal
Full-service Drupal provider – front and back end development; specialize in enterprise level Drupal implementations
Acquia Gold Development Partner
Mediacurrent Company Overview
Atlanta, GA based web consultancy exclusively focused in Drupal
Full-service Drupal provider – front and back end development; specialize in enterprise level Drupal implementations
Acquia Gold Development Partner
Define Drupal Site Requirements
Define Drupal Site Requirements
Determine how your users will interact with the legacy data on the new site
Define Drupal Site Requirements
Determine how your users will interact with the legacy data on the new site
Is there any legacy data that can be leveraged to create new content? Example: using an address record to populate a Google Map
Define Drupal Site Requirements
Determine how your users will interact with the legacy data on the new site
Is there any legacy data that can be leveraged to create new content? Example: using an address record to populate a Google Map
Will content need to be re-categorized in the new site?
Sizing Up Legacy Content
Sizing Up Legacy Content
Where does your content “live” and what format is it in?
Sizing Up Legacy Content
Where does your content “live” and what format is it in?
Determine which parts of legacy content will be used on the new site and what new meta data will possibly need to be added during the export
Prepare Content Export
Prepare Content Export
Generate CSV file containing legacy content data (most Drupal contributed modules have CSV support)
Prepare Content Export
Generate CSV file containing legacy content data (most Drupal contributed modules have CSV support)
Make sure steps to generate CSV file are well-documented, especially if making complex data transformations in the export logic
Drupal Content Basics
Drupal Content Basics
A “node” in Drupal is the general term for describing a unit of content. A node can be a story, blog post or page for example.
Drupal Content Basics
A “node” in Drupal is the general term for describing a unit of content. A node can be a story, blog post or page for example.
A “content type” is a collection of fields that make up a node. Nodes can have one or more data fields and the content type serves as a container for those fields.
Drupal Content BasicsContent Type Node
Title field
How is Legacy Content Stored in Drupal?
How is Legacy Content Stored in Drupal?
Imported data is matched to a specific content type by way of a Drupal module or custom PHP / MySQL scripts
How is Legacy Content Stored in Drupal?
Imported data is matched to a specific content type by way of a Drupal module or custom PHP / MySQL scripts
Legacy content fields map to various content types’ fields such as text, numbers, checkboxes / radio button groups, categories, images, etc.
How is Legacy Content Stored in Drupal?
Imported data is matched to a specific content type by way of a Drupal module or custom PHP / MySQL scripts
Legacy content fields map to various content types’ fields such as text, numbers, checkboxes / radio button groups, categories, images, etc.
Each row of the CSV export file becomes a node in Drupal’s database
Methods for Importing Content to Drupal
Methods for Importing Content to Drupal
Drupal contributed modules such as Node Import, Migrate and Transformations. See http://groups.drupal.org/node/21338 for comparison of various Drupal data export/import modules
Methods for Importing Content to Drupal
Drupal contributed modules such as Node Import, Migrate and Transformations. See http://groups.drupal.org/node/21338 for comparison of various Drupal data export/import modules
Custom PHP scripts (it’s possible to bootstrap just the database layer of Drupal to cut down on the code required) or custom Drupal modules
Methods for Importing Content to Drupal
Drupal contributed modules such as Node Import, Migrate and Transformations. See http://groups.drupal.org/node/21338 for comparison of various Drupal data export/import modules
Custom PHP scripts (it’s possible to bootstrap just the database layer of Drupal to cut down on the code required) or custom Drupal modules
Custom MySQL scripts for database to database migration
Advantages of Migrating to Open-Source Drupal at the Enterprise Level
Advantages of Migrating to Open-Source Drupal at the Enterprise Level
Scalable
Advantages of Migrating to Open-Source Drupal at the Enterprise Level
Scalable Social networking feature-rich
Advantages of Migrating to Open-Source Drupal at the Enterprise Level
Scalable Social networking feature-rich
Flexible,easy to
customize
Advantages of Migrating to Open-Source Drupal at the Enterprise Level
Scalable Social networking feature-rich
Flexible,easy to
customize
$Lower total
cost of ownership
Case Study: In-Fisherman.com
Case Study: In-Fisherman.com
Complements the print magazine In-fisherman
Case Study: In-Fisherman.com
Complements the print magazine In-fisherman
Initially built with proprietary CMS
Case Study: In-Fisherman.com
Complements the print magazine In-fisherman
Initially built with proprietary CMS
Averages 67,789 user visits, 266,379 page visits, and an average of 4:1 page visits/user visits per month
Why Did In-Fisherman.com Choose Drupal?
Why Did In-Fisherman.com Choose Drupal?
Multi-site / multi-database capability
Why Did In-Fisherman.com Choose Drupal?
Multi-site / multi-database capability
Ability to run forums (forum module) and website on same platform with single sign-on capability
Why Did In-Fisherman.com Choose Drupal?
Multi-site / multi-database capability
Ability to run forums (forum module) and website on same platform with single sign-on capability
Built-in social networking features offering commenting, tagging and user generated content
Why Did In-Fisherman.com Choose Drupal?
Multi-site / multi-database capability
Ability to run forums (forum module) and website on same platform with single sign-on capability
Built-in social networking features offering commenting, tagging and user generated content
Active development community
Lessons Learned from In-Fisherman.com
Lessons Learned from In-Fisherman.com
Challenge
Migrate 1500+ articles from Filemaker Pro database to
Drupal 6 for In-Fisherman.com redesign
Obstacles
Obstacles
Filemaker Pro only exported XML data, needed to transform data to CSV format
Obstacles
Filemaker Pro only exported XML data, needed to transform data to CSV format
Image files stored in disparate file system with no URL pointer stored in Filemaker Pro
Obstacles
Filemaker Pro only exported XML data, needed to transform data to CSV format
Image files stored in disparate file system with no URL pointer stored in Filemaker Pro
Compromised data integrity
Obstacles
Filemaker Pro only exported XML data, needed to transform data to CSV format
Image files stored in disparate file system with no URL pointer stored in Filemaker Pro
Compromised data integrity
Solution
Solution
Transform XML content to CSV format with custom PHP script
Solution
Transform XML content to CSV format with custom PHP script
Insert Drupal image filepath during transformation and transfer image files via FTP to application server
Solution
Customize Node Import module to handle importing CSV records into Drupal
Drupal’s Impact on In-Fisherman.com
Drupal’s Impact on In-Fisherman.com
Flexible web platform offering ability to easily add new features without compromising core business logic
Drupal’s Impact on In-Fisherman.com
Flexible web platform offering ability to easily add new features without compromising core business logic
Faster page loads
Drupal’s Impact on In-Fisherman.com
Flexible web platform offering ability to easily add new features without compromising core business logic
Faster page loads
Better SEO strategy: SEO-friendly URL’s via the Pathauto module, HTML title and meta-tag control at the article level
Drupal’s Impact on In-Fisherman.com
Flexible web platform offering ability to easily add new features without compromising core business logic
Faster page loads
Better SEO strategy: SEO-friendly URL’s via the Pathauto module, HTML title and meta-tag control at the article level
Biggest ROI: no enterprise-level licensing fees
Keys to a Successful Import
Keys to a Successful Import
Ensure all project stakeholders are familiar with the structure of the legacy content and its intended use on the new site
Keys to a Successful Import
Ensure all project stakeholders are familiar with the structure of the legacy content and its intended use on the new site
Run several “test” imports
Keys to a Successful Import
Ensure all project stakeholders are familiar with the structure of the legacy content and its intended use on the new site
Run several “test” imports
Make sure a Drupal consultant is available during the final import
Keys to a Successful Import
Ensure all project stakeholders are familiar with the structure of the legacy content and its intended use on the new site
Run several “test” imports
Make sure a Drupal consultant is available during the final import
Break down content migration tasks into small manageable steps
Keys to a Successful Import
Ensure all project stakeholders are familiar with the structure of the legacy content and its intended use on the new site
Run several “test” imports
Make sure a Drupal consultant is available during the final import
Break down content migration tasks into small manageable steps
Document what works along the way
Interested in Migrating Your Current CMS to Drupal?
Interested in Migrating Your Current CMS to Drupal?
Contact Mediacurrent at www.mediacurrent.com/contact to schedule a discovery call!
Interested in Migrating Your Current CMS to Drupal?
Contact Mediacurrent at www.mediacurrent.com/contact to schedule a discovery call!
For help on how to build an enterprise-level website with Drupal, go to
www.mediacurrent.com/download-white-paper
Acquia is Your Drupal Guide
What modules should we install?
Where do we get professional support?
How do we host our site? Will it scale?
...Where do we start?
Acquia Network Subscriptions
FitnessDiagnosticsResponse
Drupal Support, When You Need It20+ Drupal engineers on staff24x7 emergency availabilityDefined SLAsTicket tracking until satisfied resolution
Recommendations For Drupal Fitness
Advisory supportBest practicesInformation architecturePerformance tuningModule selectionRemote administration
On Demand Visibility and DiagnosticsHealth dashboardHeartbeat monitoringSite statisticsSite profile informationRemote cron
one-stop shopDrupal infrastructure + application support
Bring vertical and technical solution expertise to build websites that meet client
specifications.
Using Drupal to address unique business and technical requirements on the Web.
Acquia Network subscriptions provide enterprise-class support, hosting and network services to ensure websites meet business objectives.
Acquia
Drupal site owners Acquia Gold Partner
Mediacurrent
Customer Success
Helping Organizations Succeed with Drupal
Productive partnerships focused on customer success
Benefits of Using Drupal CMS
Accomplish more with less
Harness community-driven technology innovation
Engage your audience
© 2009 Acquia, Inc. All rights reserved.
Questions
For more information, visit each of us at:– http://acquia.com/community– http://twitter.com/acquia– http://twitter.com/mediacurrent
Contact Acquia:– [email protected]– 888-9-ACQUIA
Contact Mediacurrent:– [email protected]– 866-507-0005
Sign up for a free 30-day Acquia Network trial– http://acquia.com/trial