31
Migrating from proprietary CMS to Drupal 7 René Lasseron Behind the scenes University of Tartu DrupalCamp Baltics 2012

Drupal case study: Behind the scenes of website of University of Tartu

Embed Size (px)

DESCRIPTION

Story about migrating public website of one of the oldest universities in Europe from proprietary CMS to Drupal 7. Presented by Mekaia (http://mekaia.com) at DrupalCamp Baltics 2012 (http://www.drupalcamp.lv/).

Citation preview

Page 1: Drupal case study: Behind the scenes of website of University of Tartu

Migrating from proprietary CMS to Drupal 7

René Lasseron

Behind the scenes University of Tartu

DrupalCamp Baltics 2012

Page 2: Drupal case study: Behind the scenes of website of University of Tartu

18 emp1 internSince 2000

3 500 emp17 000 studSince 1632

Tallinn

Tartu

Page 3: Drupal case study: Behind the scenes of website of University of Tartu

19962001

2009

Page 4: Drupal case study: Behind the scenes of website of University of Tartu

When we started

• 80+ multilingual sites in one proprietary CMS

• Funky navigation scheme

• Fading technology and support

Page 5: Drupal case study: Behind the scenes of website of University of Tartu

After 6 months

• New live site on Drupal 7

• Main university site in 4 languages

• Fresh graphics and navigation

• 70+ sites still waiting for migration

www.ut.ee

Page 6: Drupal case study: Behind the scenes of website of University of Tartu

After 12 months

• 6 additional sites migrated

• Less bugs

• 60+ sites still waiting for migration

Page 7: Drupal case study: Behind the scenes of website of University of Tartu

Scale and scope

• 80+ sites in one Drupal installation

- Each in 4..2 languages- One main site www.ut.ee- Other sites for Faculties, Institutes,

Colleges, other bodies- Takes about two years to migrate

them all after completing fist stage

• 300 daily content editors- 50 editors for main site- 250 for other sites - One central administrator

• Volume- 28 000 nodes on main site- 925 menu items- 20 000 document files in public folder

• Integrations with 8 backend systems

Page 8: Drupal case study: Behind the scenes of website of University of Tartu

Login

• Username/password against university’s central LDAP, combined with web service

• Estonian ID-card and mobile-ID

Page 9: Drupal case study: Behind the scenes of website of University of Tartu

User interface

• Most features hidden from daily editors

• Few content types

• Workbench

Few tools and content types

Page 10: Drupal case study: Behind the scenes of website of University of Tartu

Re-worked tabs

Add new sub-page- Menu and parent menu element gets created automatically

Page 11: Drupal case study: Behind the scenes of website of University of Tartu

Add different content to the page, even different regions- Creates automatic relations using node reference

Re-worked tabs

Page 12: Drupal case study: Behind the scenes of website of University of Tartu

Re-worked tabs

Page 13: Drupal case study: Behind the scenes of website of University of Tartu

Main node, defining the menuChild node, shown via view and node reference

Re-worked tabs

Page 14: Drupal case study: Behind the scenes of website of University of Tartu

There’s a module for that

Multisite and internalization- Domain Access (vs

multisite)- Internalization- Custom module for

allowing same alias in different sites

- Transliteration

350 modules used

Content editing and organizing- CKeditor with custom

styles- IMCE vs Media- Linkit- Diff and revisions

- Autosave- Content lock- Link checker- Automated logout

Views and layout- Webform with

Clientside validation- Simple ads- Views (31)- Display Suite

- Context (7)- Panel (few)- Menu firstchild

Page 15: Drupal case study: Behind the scenes of website of University of Tartu

There’s a module for that

Multisite and internalization- Domain Access (vs

multisite)- Internalization- Custom module for

allowing same alias in different sites

- Transliteration

350 modules used

Content editing and organizing- CKeditor with custom

styles- IMCE vs Media- Linkit- Diff and revisions

- Autosave- Content lock- Link checker- Automated logout

Views and layout- Webform with

Clientside validation- Simple ads- Views (31)- Display Suite

- Context (7)- Panel (few)- Menu firstchild

Page 16: Drupal case study: Behind the scenes of website of University of Tartu

There’s a module for that

Multisite and internalization- Domain Access (vs

multisite)- Internalization- Custom module for

allowing same alias in different sites

- Transliteration

350 modules used

Content editing and organizing- CKeditor with custom

styles- IMCE vs Media- Linkit- Diff and revisions

- Autosave- Content lock- Link checker- Automated logout

Views and layout- Webform with

Clientside validation- Simple ads- Views (31)- Display Suite

- Context (7)- Panel (few)- Menu firstchild

Page 17: Drupal case study: Behind the scenes of website of University of Tartu

There’s a module for that

Integration- Feeds with many patches- LDAP

350 modules used

Other- Features (13)- Google CSE

Page 18: Drupal case study: Behind the scenes of website of University of Tartu

Custom modulesTrash

Page 19: Drupal case study: Behind the scenes of website of University of Tartu

Custom modulesVisually impaired

Page 20: Drupal case study: Behind the scenes of website of University of Tartu

Custom modulesContent reminder

Page 21: Drupal case study: Behind the scenes of website of University of Tartu

• Estonian ID-card and mobile-ID support

• Italic titles

• User bulk operations

• Media support for www.uttv.ee

Work in progress on publishing these on drupal.org

Custom modulesOthers

Page 22: Drupal case study: Behind the scenes of website of University of Tartu

Public interface

• Omega base theme- http://drupal.org/project/omega

• HTML5/CSS3

• 960.gs 12 col grid

• Nice “primary region” feature

• Mobile adaptive

• One theme for main site, sub-themes for sub-sites

Page 23: Drupal case study: Behind the scenes of website of University of Tartu

• Trying to create mental hierarchy in Drupal

- It’s everywhere around us

• Persisting menus when drilling down on Views

- Menu position http://drupal.org/project/menu_position

• Menu structure based user access

- Main site: 50 editors, 28 000 nodes, 4 languages

- Failed with Workbench Access- Waited for first release of Access

Control Kit

What we struggled withHierarchy and Access control

Page 24: Drupal case study: Behind the scenes of website of University of Tartu

• Need for one place to manage tens of thousands of files with folder hierarchy and access control

• Media vs elFinder vs IMCE

• IMCE- Existing folder hierarchy- Existing access control- No paging

What we struggled withFile management

Page 25: Drupal case study: Behind the scenes of website of University of Tartu

What we struggled withDrupal UI with long and deep menus

Page 26: Drupal case study: Behind the scenes of website of University of Tartu

What we struggled withMigration

Preserve all- Content- Hierarchy and menus- Files

- Users- User’s relation to content- Content ID’s- Aliases

Page 27: Drupal case study: Behind the scenes of website of University of Tartu

What we struggled withMigration

Automatweb- Highly hierarchical- Hundreds of content/object types- Content often combined

#something# includes. Example:

!!!!!!!!!!!!!!!!

Hello,'visitor

#welcome(text#

Please'download'#file(1#'or'see'#link(3#'or'send'us'some'feedback:

#feedback(form#'

#contacts(table#

!!!!!!!!!!!!!!!!

Page 28: Drupal case study: Behind the scenes of website of University of Tartu

Deployment and performance

• Development, test and live sites

• Kept in sync using Features, Git

• Separate HTTP and MySQL servers

• Boost module

• HTML and Apache level Yslow and Google Page speed recommendations

Page 29: Drupal case study: Behind the scenes of website of University of Tartu

Who did it and what’s next

• Professional customer

• Mekaia: 1 Project manager, 2 backend programmers, 1 front-end coder. 7 persons during one year.

• Graphics design: Velvet

• IA: Kristjan Jansen

• Tools such as Git, Asana, Jira, Liquid planner, Harvest, Google Docs, Skype

• Pushing the limits with 60 additional sites

• Contributing to drupal.org

Page 30: Drupal case study: Behind the scenes of website of University of Tartu
Page 31: Drupal case study: Behind the scenes of website of University of Tartu

René Lasseron [email protected]

Niine 11 Tallinn 10414 Estoniahttp://mekaia.com