28
Belgacom retail website migration How we moved www.belgacom.be to Magnolia-cms 4.5 MCONF 2014 - Benoit Poncelet

Migrating Belgium's Largest Telecommunication Company to Magnolia

Embed Size (px)

DESCRIPTION

Benoit Poncelet from Web-eMotion explains how Belgacom migrates to Magnolia with all of its 1300 pages and 2 languages.

Citation preview

Page 1: Migrating Belgium's Largest Telecommunication Company to Magnolia

Belgacom retail website migration

How we moved www.belgacom.be to Magnolia-cms 4.5

MCONF 2014 - Benoit Poncelet

Page 2: Migrating Belgium's Largest Telecommunication Company to Magnolia

Agenda

�  What’s Belgacom ?

�  Why moving to magnolia ?

�  How we imported all content into magnolia

30/06/14 Slide 2

Page 3: Migrating Belgium's Largest Telecommunication Company to Magnolia

About me… �  Benoit Poncelet – 32 years - Brussels

�  Bachelor in computer science in 2005 from Paul Lambin Institute (Brussels)

�  Developer - Team lead – Application architect over last 10 years

�  Telecommunication, Bank, web agencies, …

�  Founded Web eMotion company in 2012

30/06/14 Web-eMotion – http://www.webemotion.be Slide 3

Page 4: Migrating Belgium's Largest Telecommunication Company to Magnolia

What’s Belgacom �  Main Belgian telecommunication company

�  15.753 employees

�  Turnover of 6.32 billions euros

�  Triple play provider �  1,386,000 Belgacom TV �  1,637,000 Internet connections

�  3.085.000 Fixed Lines customers �  5,416,000 Mobile numbers

�  1,237,000 Packs

�  Private, SME and Large segments

�  7 different brands

Page 5: Migrating Belgium's Largest Telecommunication Company to Magnolia

It’s also 3 main websites �  E-service

�  400K visitors per month

�  50 dynamic pages

�  E-shop �  1500 pages �  150 visits per hour

�  Retail �  900 concurrent users

�  55K pages view per hour �  1300 pages within 3 languages

�  +/- 20 publishers

�  Weekly released

Page 6: Migrating Belgium's Largest Telecommunication Company to Magnolia

Why moving from teamsite �  Business was complaining about

�  Time to market to get new functionalities was too long. �  Development cost & time was too high. �  Maintenance was too complex. �  Release process was cumbersome.

�  Why ? �  Platform doesn’t fit with requirements (Date On/Off mechanize, SEO, multi-

languages, Page hierarchy, garbage collector of unused content) and requires deep customizations

�  Black box and bad documentations �  Steep learning curve �  No adequate development environment

Page 7: Migrating Belgium's Largest Telecommunication Company to Magnolia

Why magnolia ? �  Enterprise support

�  67 Partners around the world �  4 Partners in Belgium

�  Easy setup and deployment

�  Open sources

�  Short development time during POC

�  Belgacom infrastructure compliant

�  Intuitive and user friendly interface

30/06/14 Slide 7

Page 8: Migrating Belgium's Largest Telecommunication Company to Magnolia

POC Magnolia-CMS �  Add custom functionalities

�  Date On/Date Off Mechanism (dodom)

�  Custom content

�  But also

�  Translated SEO �  Sitemap based edition �  Any time publishing �  Content syndication / inheritance �  Short URLs / Aliases �  Staging / Preview

�  Mega Drop Down �  Separation of concerns �  Product catalog integration �  Extended product modelPerformance �  A/B Testing �  Personalized content �  Page dependencies

�  Content types �  Asset management �  Mobile support

�  Content migration...

30/06/14 Slide 8

Page 9: Migrating Belgium's Largest Telecommunication Company to Magnolia

DODOM �  Objectives

�  Specify DODOM at page and/or component level

�  Be able to preview the content for a specific preview date

30/06/14 Slide 9

Page 10: Migrating Belgium's Largest Telecommunication Company to Magnolia

Custom content �  Objectives

�  Allow business to create one-shot components where custom html can be used

30/06/14 Slide 10

Page 11: Migrating Belgium's Largest Telecommunication Company to Magnolia

Content migration �  Objectives

�  Import content from production in the new infrastructure.

�  What? �  Pages structure and metadata (names, visibility) of a page is

imported in Magnolia �  Content of page (banners, custom, links) are also imported in

pages. �  Assets present in pages are imported into DMS and linked into

components

30/06/14 Slide 11

Page 12: Migrating Belgium's Largest Telecommunication Company to Magnolia

How to do it…

30/06/14 Slide 12

Page 13: Migrating Belgium's Largest Telecommunication Company to Magnolia

Let’s check into Magnolia

30/06/14 Slide 13

Page 14: Migrating Belgium's Largest Telecommunication Company to Magnolia

What’s in Magnolia 5.x

30/06/14 Slide 14

Page 15: Migrating Belgium's Largest Telecommunication Company to Magnolia

What does Magnolia

30/06/14 Slide 15

info.magnolia.module.admininterface.trees.WebsiteTreeHandler

Page 16: Migrating Belgium's Largest Telecommunication Company to Magnolia

How create all pages into magnolia

�  Via sitemap.xml �  Contains all links to important pages

�  Via teamsite sitemap �  Contains all pages, translated names, date On/Off, meta

data/description, visibility information

è Teamsite sitemap contains more information

30/06/14 Slide 16

Page 17: Migrating Belgium's Largest Telecommunication Company to Magnolia

Let’s demo the import of all pages

30/06/14 Slide 17

Page 18: Migrating Belgium's Largest Telecommunication Company to Magnolia

How import page content ?

30/06/14 Slide 18

Page 19: Migrating Belgium's Largest Telecommunication Company to Magnolia

Import page contents into magnolia

�  From Teamsite �  Complex xml data structure to access data

Sitemap è Pages è Components è DCR è Data

�  From live website (html) �  Parse html from live website to import data

Page 20: Migrating Belgium's Largest Telecommunication Company to Magnolia

What does JSoup

jsoup: Java HTML Parser

jsoup is a Java library for working with real-world HTML. It provides a very convenient API for extracting and manipulating data, using the best of DOM, CSS, and jquery-like methods.

30/06/14 Slide 20

Document doc = Jsoup.connect("http://en.wikipedia.org/").get(); Elements newsHeadlines = doc.select("#mp-itn b a");

Page 21: Migrating Belgium's Largest Telecommunication Company to Magnolia

Concept

Import content via Jsoup and create content based on html.

�  Iterate over page �  Iterate over areas

�  Iterate over components

30/06/14 Slide 21

Page 22: Migrating Belgium's Largest Telecommunication Company to Magnolia

Let’s try…

30/06/14 Slide 22

Page 23: Migrating Belgium's Largest Telecommunication Company to Magnolia

Page import structure

30/06/14 Slide 23

Page 24: Migrating Belgium's Largest Telecommunication Company to Magnolia

Components import structure

30/06/14 Slide 24

Page 25: Migrating Belgium's Largest Telecommunication Company to Magnolia

Let’s demo import of content

30/06/14 Slide 25

Page 26: Migrating Belgium's Largest Telecommunication Company to Magnolia

Conclusions

�  Automated migration without impact on publishing activities.

�  80% migrated in 2 months

�  20% remaining cost 2 additional months

30/06/14 Slide 26

Page 27: Migrating Belgium's Largest Telecommunication Company to Magnolia

Details ? Time for Q&A !

Page 28: Migrating Belgium's Largest Telecommunication Company to Magnolia

References / contact Jsoup : http://jsoup.org/

Magnolia : http://documentation.magnolia-cms.com/

Need to Contact me:

Email: [email protected] & http://www.webemotion.be

Twitter: @benoit_poncelet & @Web_eMotion