Your SlideShare is downloading. ×
0
Best Practices for Migrating a Legacy-Based CMS to Drupal<br />Paul Chason<br />Managing Partner<br />Mediacurrent<br />Br...
© 2009 Acquia, Inc.  All rights reserved.<br />Agenda<br />Introduction<br />Preparing to migrate legacy content<br />Unde...
Drupal Gaining Market Momentum<br />
Social Publishing Software =&gt;Participation-Driven Websites<br />social <br />networks<br />blogs /<br />wikis<br />foru...
Drupal & ROI<br />Reduce costs<br />Zero $$ software licensing<br />Reduced maintenance costs<br />Deploy websites faster<...
© 2009 Acquia, Inc.  All rights reserved.<br />Mediacurrent<br />Paul Chason<br />Managing Director, Mediacurrent<br />
Mediacurrent Company Overview<br />
Mediacurrent Company Overview<br />Atlanta, GA based web consultancy exclusively focused in Drupal<br />
Mediacurrent Company Overview<br />Atlanta, GA based web consultancy exclusively focused in Drupal<br />Full-service Drupa...
Mediacurrent Company Overview<br />Atlanta, GA based web consultancy exclusively focused in Drupal<br />Full-service Drupa...
Mediacurrent Company Overview<br />Atlanta, GA based web consultancy exclusively focused in Drupal<br />Full-service Drupa...
Define Drupal Site Requirements<br />
Define Drupal Site Requirements<br />Determine how your users will interact with the legacy data on the new site<br />
Define Drupal Site Requirements<br />Determine how your users will interact with the legacy data on the new site<br />Is t...
Define Drupal Site Requirements<br />Determine how your users will interact with the legacy data on the new site<br />Is t...
Sizing Up Legacy Content<br />
Sizing Up Legacy Content<br />Where does your content “live” and what format is it in?<br />
Sizing Up Legacy Content<br />Where does your content “live” and what format is it in?<br />Determine which parts of legac...
Prepare Content Export<br />
Prepare Content Export<br />Generate CSV file containing legacy content data (most Drupal contributed modules have CSV sup...
Prepare Content Export<br />Generate CSV file containing legacy content data (most Drupal contributed modules have CSV sup...
Drupal Content Basics<br />
Drupal Content Basics<br />A “node” in Drupal is the general term for describing a unit of content. A node can be a story,...
Drupal Content Basics<br />A “node” in Drupal is the general term for describing a unit of content. A node can be a story,...
Drupal Content Basics<br />Content Type<br />Node<br />Title field<br />
How is Legacy Content Stored in Drupal?<br />
How is Legacy Content Stored in Drupal?<br />Imported data is matched to a specific content type by way of a Drupal module...
How is Legacy Content Stored in Drupal?<br />Imported data is matched to a specific content type by way of a Drupal module...
How is Legacy Content Stored in Drupal?<br />Imported data is matched to a specific content type by way of a Drupal module...
Methods for Importing Content to Drupal<br />
Methods for Importing Content to Drupal<br />Drupal contributed modules such as Node Import, Migrate and Transformations. ...
Methods for Importing Content to Drupal<br />Drupal contributed modules such as Node Import, Migrate and Transformations. ...
Methods for Importing Content to Drupal<br />Drupal contributed modules such as Node Import, Migrate and Transformations. ...
Advantages of Migrating to Open-Source Drupal at the Enterprise Level<br />
Advantages of Migrating to Open-Source Drupal at the Enterprise Level<br />Scalable<br />
Advantages of Migrating to Open-Source Drupal at the Enterprise Level<br />Scalable<br />Social networking feature-rich<br />
Advantages of Migrating to Open-Source Drupal at the Enterprise Level<br />Scalable<br />Social networking feature-rich<br...
Advantages of Migrating to Open-Source Drupal at the Enterprise Level<br />$<br />Scalable<br />Social networking feature-...
Case Study: In-Fisherman.com<br />
Case Study: In-Fisherman.com<br />Complements the print magazine In-fisherman<br />
Case Study: In-Fisherman.com<br />Complements the print magazine In-fisherman<br />Initially built with proprietary CMS<br />
Case Study: In-Fisherman.com<br />Complements the print magazine In-fisherman<br />Initially built with proprietary CMS<br...
Why Did In-Fisherman.com Choose Drupal?<br />
Why Did In-Fisherman.com Choose Drupal?<br />Multi-site / multi-database capability<br />
Why Did In-Fisherman.com Choose Drupal?<br />Multi-site / multi-database capability<br />Ability to run forums (forum modu...
Why Did In-Fisherman.com Choose Drupal?<br />Multi-site / multi-database capability<br />Ability to run forums (forum modu...
Why Did In-Fisherman.com Choose Drupal?<br />Multi-site / multi-database capability<br />Ability to run forums (forum modu...
Lessons Learned from In-Fisherman.com<br />
Lessons Learned from In-Fisherman.com<br />Challenge<br />Migrate 1500+ articles from Filemaker Pro database to<br />Drupa...
Obstacles<br />
Obstacles<br />Filemaker Pro only exported XML data, needed to transform data to CSV format<br />
Obstacles<br />Filemaker Pro only exported XML data, needed to transform data to CSV format<br />Image files stored in dis...
Obstacles<br />Filemaker Pro only exported XML data, needed to transform data to CSV format<br />Image files stored in dis...
Obstacles<br />Filemaker Pro only exported XML data, needed to transform data to CSV format<br />Image files stored in dis...
Solution<br />
Solution<br />Transform XML content to CSV format with custom PHP script<br />
Solution<br />Transform XML content to CSV format with custom PHP script<br />Insert Drupal image filepath during transfor...
Solution<br />Customize  Node Import module to handle importing CSV records into Drupal<br />
Drupal’s Impact on In-Fisherman.com<br />
Drupal’s Impact on In-Fisherman.com<br />Flexible web platform offering ability to easily add new features without comprom...
Drupal’s Impact on In-Fisherman.com<br />Flexible web platform offering ability to easily add new features without comprom...
Drupal’s Impact on In-Fisherman.com<br />Flexible web platform offering ability to easily add new features without comprom...
Drupal’s Impact on In-Fisherman.com<br />Flexible web platform offering ability to easily add new features without comprom...
Keys to a Successful Import<br />
Keys to a Successful Import<br />Ensure all project stakeholders are familiar with the structure of the legacy content and...
Keys to a Successful Import<br />Ensure all project stakeholders are familiar with the structure of the legacy content and...
Keys to a Successful Import<br />Ensure all project stakeholders are familiar with the structure of the legacy content and...
Keys to a Successful Import<br />Ensure all project stakeholders are familiar with the structure of the legacy content and...
Keys to a Successful Import<br />Ensure all project stakeholders are familiar with the structure of the legacy content and...
Interested in Migrating Your Current CMS to Drupal?<br />
Interested in Migrating Your Current CMS to Drupal?<br />Contact Mediacurrent at www.mediacurrent.com/contact to schedule ...
Interested in Migrating Your Current CMS to Drupal?<br />Contact Mediacurrent at www.mediacurrent.com/contact to schedule ...
Acquia is Your Drupal Guide<br />What modules should we install?<br />Where do we get professional support?<br />How do we...
Acquia Network Subscriptions<br />Fitness<br />Diagnostics<br />Response<br />
Drupal Support, When You Need It<br />20+ Drupal engineers on staff<br />24x7 emergency availability<br />Defined SLAs<br ...
Recommendations For Drupal Fitness<br />Advisory support<br />Best practices<br />Information architecture<br />Performanc...
On Demand Visibility and Diagnostics<br />Health dashboard<br />Heartbeat monitoring<br />Site statistics<br />Site profil...
one-stop shop<br />Drupal infrastructure + application support<br />
Productive partnerships focused on customer success<br />Acquia Gold Partner Mediacurrent<br />Drupal site owners<br />Def...
Benefits of Using Drupal CMS<br />Accomplish more with less<br />Harness community-driven technology innovation<br />Engag...
© 2009 Acquia, Inc.  All rights reserved.<br />Questions<br />For more information, visit each of us at:<br />http://acqui...
Upcoming SlideShare
Loading in...5
×

Best Practices for Migrating a Legacy-Based CMS to Drupal

5,437

Published on

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
5,437
On Slideshare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
110
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Transcript of "Best Practices for Migrating a Legacy-Based CMS to Drupal"

  1. 1. Best Practices for Migrating a Legacy-Based CMS to Drupal<br />Paul Chason<br />Managing Partner<br />Mediacurrent<br />Bryan House<br />Marketing Director<br />Acquia<br />
  2. 2. © 2009 Acquia, Inc. All rights reserved.<br />Agenda<br />Introduction<br />Preparing to migrate legacy content<br />Understanding Drupal concepts<br />Importing content into Drupal<br />Case study – In-Fisherman.com<br />How Acquia can help<br />Questions<br />
  3. 3. Drupal Gaining Market Momentum<br />
  4. 4. Social Publishing Software =&gt;Participation-Driven Websites<br />social <br />networks<br />blogs /<br />wikis<br />forums / <br />comments<br />content<br />workflow<br />taxonomy<br />analytics<br />search<br />RSS<br />ratings<br />tagging<br />users<br />Social<br />Publishing<br />Systems<br />Content<br />Mgmt<br />Systems<br />Social<br />Software<br />Tools<br />
  5. 5. Drupal & ROI<br />Reduce costs<br />Zero $$ software licensing<br />Reduced maintenance costs<br />Deploy websites faster<br />Modular architecture<br />Configurable, not custom<br />Repeatable infrastructure<br />Multisite support<br />Turnkey site deployment<br />
  6. 6. © 2009 Acquia, Inc. All rights reserved.<br />Mediacurrent<br />Paul Chason<br />Managing Director, Mediacurrent<br />
  7. 7. Mediacurrent Company Overview<br />
  8. 8. Mediacurrent Company Overview<br />Atlanta, GA based web consultancy exclusively focused in Drupal<br />
  9. 9. Mediacurrent Company Overview<br />Atlanta, GA based web consultancy exclusively focused in Drupal<br />Full-service Drupal provider – front and back end development; specialize in enterprise level Drupal implementations<br />
  10. 10. Mediacurrent Company Overview<br />Atlanta, GA based web consultancy exclusively focused in Drupal<br />Full-service Drupal provider – front and back end development; specialize in enterprise level Drupal implementations<br />Acquia Gold Development Partner<br />
  11. 11. Mediacurrent Company Overview<br />Atlanta, GA based web consultancy exclusively focused in Drupal<br />Full-service Drupal provider – front and back end development; specialize in enterprise level Drupal implementations<br />Acquia Gold Development Partner<br />
  12. 12. Define Drupal Site Requirements<br />
  13. 13. Define Drupal Site Requirements<br />Determine how your users will interact with the legacy data on the new site<br />
  14. 14. Define Drupal Site Requirements<br />Determine how your users will interact with the legacy data on the new site<br />Is there any legacy data that can be leveraged to create new content? Example: using an address record to populate a Google Map<br />
  15. 15. Define Drupal Site Requirements<br />Determine how your users will interact with the legacy data on the new site<br />Is there any legacy data that can be leveraged to create new content? Example: using an address record to populate a Google Map<br />Will content need to be re-categorized in the new site? <br />
  16. 16. Sizing Up Legacy Content<br />
  17. 17. Sizing Up Legacy Content<br />Where does your content “live” and what format is it in?<br />
  18. 18. Sizing Up Legacy Content<br />Where does your content “live” and what format is it in?<br />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<br />
  19. 19. Prepare Content Export<br />
  20. 20. Prepare Content Export<br />Generate CSV file containing legacy content data (most Drupal contributed modules have CSV support)<br />
  21. 21. Prepare Content Export<br />Generate CSV file containing legacy content data (most Drupal contributed modules have CSV support)<br />Make sure steps to generate CSV file are well-documented, especially if making complex data transformations in the export logic<br />
  22. 22. Drupal Content Basics<br />
  23. 23. Drupal Content Basics<br />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.<br />
  24. 24. Drupal Content Basics<br />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.<br />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.<br />
  25. 25. Drupal Content Basics<br />Content Type<br />Node<br />Title field<br />
  26. 26. How is Legacy Content Stored in Drupal?<br />
  27. 27. How is Legacy Content Stored in Drupal?<br />Imported data is matched to a specific content type by way of a Drupal module or custom PHP / MySQL scripts<br />
  28. 28. How is Legacy Content Stored in Drupal?<br />Imported data is matched to a specific content type by way of a Drupal module or custom PHP / MySQL scripts<br />Legacy content fields map to various content types’ fields such as text, numbers, checkboxes / radio button groups, categories, images, etc.<br />
  29. 29. How is Legacy Content Stored in Drupal?<br />Imported data is matched to a specific content type by way of a Drupal module or custom PHP / MySQL scripts<br />Legacy content fields map to various content types’ fields such as text, numbers, checkboxes / radio button groups, categories, images, etc.<br />Each row of the CSV export file becomes a node in Drupal’s database<br />
  30. 30. Methods for Importing Content to Drupal<br />
  31. 31. Methods for Importing Content to Drupal<br />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<br />
  32. 32. Methods for Importing Content to Drupal<br />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<br />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<br />
  33. 33. Methods for Importing Content to Drupal<br />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<br />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<br />Custom MySQL scripts for database to database migration<br />
  34. 34. Advantages of Migrating to Open-Source Drupal at the Enterprise Level<br />
  35. 35. Advantages of Migrating to Open-Source Drupal at the Enterprise Level<br />Scalable<br />
  36. 36. Advantages of Migrating to Open-Source Drupal at the Enterprise Level<br />Scalable<br />Social networking feature-rich<br />
  37. 37. Advantages of Migrating to Open-Source Drupal at the Enterprise Level<br />Scalable<br />Social networking feature-rich<br />Flexible,<br />easy to customize<br />
  38. 38. Advantages of Migrating to Open-Source Drupal at the Enterprise Level<br />$<br />Scalable<br />Social networking feature-rich<br />Flexible,<br />easy to customize<br />Lower total cost of ownership<br />
  39. 39. Case Study: In-Fisherman.com<br />
  40. 40. Case Study: In-Fisherman.com<br />Complements the print magazine In-fisherman<br />
  41. 41. Case Study: In-Fisherman.com<br />Complements the print magazine In-fisherman<br />Initially built with proprietary CMS<br />
  42. 42. Case Study: In-Fisherman.com<br />Complements the print magazine In-fisherman<br />Initially built with proprietary CMS<br />Averages 67,789 user visits, 266,379 page visits, and an average of 4:1 page visits/user visits per month<br />
  43. 43. Why Did In-Fisherman.com Choose Drupal?<br />
  44. 44. Why Did In-Fisherman.com Choose Drupal?<br />Multi-site / multi-database capability<br />
  45. 45. Why Did In-Fisherman.com Choose Drupal?<br />Multi-site / multi-database capability<br />Ability to run forums (forum module) and website on same platform with single sign-on capability<br />
  46. 46. Why Did In-Fisherman.com Choose Drupal?<br />Multi-site / multi-database capability<br />Ability to run forums (forum module) and website on same platform with single sign-on capability<br />Built-in social networking features offering commenting, tagging and user generated content<br />
  47. 47. Why Did In-Fisherman.com Choose Drupal?<br />Multi-site / multi-database capability<br />Ability to run forums (forum module) and website on same platform with single sign-on capability<br />Built-in social networking features offering commenting, tagging and user generated content<br />Active development community<br />
  48. 48. Lessons Learned from In-Fisherman.com<br />
  49. 49. Lessons Learned from In-Fisherman.com<br />Challenge<br />Migrate 1500+ articles from Filemaker Pro database to<br />Drupal 6 for In-Fisherman.com redesign<br />
  50. 50. Obstacles<br />
  51. 51. Obstacles<br />Filemaker Pro only exported XML data, needed to transform data to CSV format<br />
  52. 52. Obstacles<br />Filemaker Pro only exported XML data, needed to transform data to CSV format<br />Image files stored in disparate file system with no URL pointer stored in Filemaker Pro<br />
  53. 53. Obstacles<br />Filemaker Pro only exported XML data, needed to transform data to CSV format<br />Image files stored in disparate file system with no URL pointer stored in Filemaker Pro<br />Compromised data integrity<br />
  54. 54. Obstacles<br />Filemaker Pro only exported XML data, needed to transform data to CSV format<br />Image files stored in disparate file system with no URL pointer stored in Filemaker Pro<br />Compromised data integrity<br />
  55. 55. Solution<br />
  56. 56. Solution<br />Transform XML content to CSV format with custom PHP script<br />
  57. 57. Solution<br />Transform XML content to CSV format with custom PHP script<br />Insert Drupal image filepath during transformation and transfer image files via FTP to application server<br />
  58. 58. Solution<br />Customize Node Import module to handle importing CSV records into Drupal<br />
  59. 59. Drupal’s Impact on In-Fisherman.com<br />
  60. 60. Drupal’s Impact on In-Fisherman.com<br />Flexible web platform offering ability to easily add new features without compromising core business logic<br />
  61. 61. Drupal’s Impact on In-Fisherman.com<br />Flexible web platform offering ability to easily add new features without compromising core business logic<br />Faster page loads<br />
  62. 62. Drupal’s Impact on In-Fisherman.com<br />Flexible web platform offering ability to easily add new features without compromising core business logic<br />Faster page loads<br />Better SEO strategy: SEO-friendly URL’s via the Pathauto module, HTML title and meta-tag control at the article level<br />
  63. 63. Drupal’s Impact on In-Fisherman.com<br />Flexible web platform offering ability to easily add new features without compromising core business logic<br />Faster page loads<br />Better SEO strategy: SEO-friendly URL’s via the Pathauto module, HTML title and meta-tag control at the article level<br />Biggest ROI: no enterprise-level licensing fees<br />
  64. 64. Keys to a Successful Import<br />
  65. 65. Keys to a Successful Import<br />Ensure all project stakeholders are familiar with the structure of the legacy content and its intended use on the new site<br />
  66. 66. Keys to a Successful Import<br />Ensure all project stakeholders are familiar with the structure of the legacy content and its intended use on the new site<br />Run several “test” imports<br />
  67. 67. Keys to a Successful Import<br />Ensure all project stakeholders are familiar with the structure of the legacy content and its intended use on the new site<br />Run several “test” imports<br />Make sure a Drupal consultant is available during the final import<br />
  68. 68. Keys to a Successful Import<br />Ensure all project stakeholders are familiar with the structure of the legacy content and its intended use on the new site<br />Run several “test” imports<br />Make sure a Drupal consultant is available during the final import<br />Break down content migration tasks into small manageable steps<br />
  69. 69. Keys to a Successful Import<br />Ensure all project stakeholders are familiar with the structure of the legacy content and its intended use on the new site<br />Run several “test” imports<br />Make sure a Drupal consultant is available during the final import<br />Break down content migration tasks into small manageable steps<br />Document what works along the way<br />
  70. 70. Interested in Migrating Your Current CMS to Drupal?<br />
  71. 71. Interested in Migrating Your Current CMS to Drupal?<br />Contact Mediacurrent at www.mediacurrent.com/contact to schedule a discovery call!<br />
  72. 72. Interested in Migrating Your Current CMS to Drupal?<br />Contact Mediacurrent at www.mediacurrent.com/contact to schedule a discovery call!<br />For help on how to build an enterprise-level website with Drupal, go to<br />www.mediacurrent.com/download-white-paper<br />
  73. 73. Acquia is Your Drupal Guide<br />What modules should we install?<br />Where do we get professional support?<br />How do we host our site? Will it scale?<br />...Where do we start?<br />
  74. 74. Acquia Network Subscriptions<br />Fitness<br />Diagnostics<br />Response<br />
  75. 75. Drupal Support, When You Need It<br />20+ Drupal engineers on staff<br />24x7 emergency availability<br />Defined SLAs<br />Ticket tracking until satisfied resolution<br />
  76. 76. Recommendations For Drupal Fitness<br />Advisory support<br />Best practices<br />Information architecture<br />Performance tuning<br />Module selection<br />Remote administration<br />
  77. 77. On Demand Visibility and Diagnostics<br />Health dashboard<br />Heartbeat monitoring<br />Site statistics<br />Site profile information<br />Remote cron<br />
  78. 78. one-stop shop<br />Drupal infrastructure + application support<br />
  79. 79. Productive partnerships focused on customer success<br />Acquia Gold Partner Mediacurrent<br />Drupal site owners<br />Define Projects<br />Using Drupal to address unique business and technical requirements on the Web.<br />Design, Build, Deploy<br />Bring vertical and technical solution expertise to build websites that meet client specifications.<br />Customer <br />Success<br />Maintain & Support<br />Acquia<br />Acquia Network subscriptions provide enterprise-class support, hosting and network services to ensure websites meet business objectives.<br />Helping Organizations Succeed with Drupal<br />
  80. 80. Benefits of Using Drupal CMS<br />Accomplish more with less<br />Harness community-driven technology innovation<br />Engage your audience<br />
  81. 81. © 2009 Acquia, Inc. All rights reserved.<br />Questions<br />For more information, visit each of us at:<br />http://acquia.com/community<br />http://twitter.com/acquia<br />http://twitter.com/mediacurrent<br />Contact Acquia:<br />sales@acquia.com<br />888-9-ACQUIA<br />ContactMediacurrent:<br />dave.terry@mediacurrent.com<br />866-507-0005<br />Sign up for a free 30-day Acquia Network trial<br />http://acquia.com/trial<br />
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×