Date post: | 25-May-2015 |
Category: |
Documents |
Upload: | amazee-labs |
View: | 315 times |
Download: | 6 times |
Building a Multilingual, Multidomain Drupal Site
Dagmar Muth, Nicolas Beck 1st of October 2014
Case Study sonova.com
Agenda 1
How we met 2
3
4 Domains & Languages
Technical setup
Translations 4
Limitations
4 5 5
4 4 5 6
Who we are
Methodology & Collaboration 4 4 5 7
Conclusions 4 4 5 8
Agenda 1
How we met 2
3
4 Domains & Languages
Technical setup
Translations 4
Limitations
4 5 5
4 4 5 6
Who we are
Methodology & Collaboration 4 4 5 7
Conclusions 4 4 5 8
The A-Team
Nicolas Beck Corporate Branding Manager at Sonova
Dagmar Muth Lead Projects at Amazee Labs @dagmita
Agenda 1
How we met 2
3
4 Domains & Languages
Technical setup
Translations 4
Limitations
4 5 5
4 4 5 6
Who we are
Methodology & Collaboration 4 4 5 7
Conclusions 4 4 5 8
Hearing Instruments Segment Cochlear Implants Segment § Behind-The-Ear hearing instruments (BTE) § FM systems
§ Custom In-The-Ear hearing instruments (ITE)
§ Hearing protection § Wireless communication systems
§ Invisible extended-wear hearing instruments
§ Cochlear implants
Retail
Who is Sonova
Sonova to become strong employer brand that unites all employees
Sales 2013/14 of CHF 1.95 billion
More than 9’000 dedicated employees
Present in over 90 countries across the globe
Who is Sonova
Project Milestones
Early 2013 Repositioning of brand to drive demand for new website. Project kick-off end of February. Setup of global site in DE and EN. Integration of third Parties. (Effort: 60 PT)
May 21st 2013 Phase I ready for Full Year results presentation
Apr 2014 Brazil as additional domain and portuguese as additional language (Effort: 7PT)
Agenda 1
How we met 2
3
4 Domains & Languages
Technical setup
Translations 4
Limitations
4 5 5
4 4 5 6
Who we are
Methodology & Collaboration 4 4 5 7
Conclusions 4 4 5 8
Basic technical Setup • Drupal 7
• Fully responsive built with Omega 4 theme
• Saas and Compass from scratch
• Usage of views in combination with panels, panels everywhere and panelizer
• Search API with Apache Solr as a search server
• XML and iFrame Integrations of 3rd party applications (Investis, Tensid)
• Hosting on our server cluster at our hosting partner
Agenda 1
How we met 2
3
4 Domains & Languages
Technical setup
Translations 4
Limitations
4 5 5
4 4 5 6
Who we are
Methodology & Collaboration 4 4 5 7
Conclusions 4 4 5 8
Requirements
First Phase:
• Website with two different languages (DE and EN) and one main global domain
Second Phase:
• Brazil as domain with own content in Portuguese
• Limited rights for country managers & country editors
• Easy roll-out for many more domains to come
Domains & languages
Domains
Domain variants
Menu
Country Editors
Countries (GeoIP)
Google country target
Languages
Global Brazil Portugal
• No multisite!
• Use subdomains
Domain access
Domains & languages
Global Brazil Portugal
• Domain locale
• One language per domain
• Language fallback solution
Domain locale
Language fallback
DE-GL EN-GL PT-BR PT-PT EN-BR
Domains
Domain variants
Menu
Country Editors
Countries (GeoIP)
Google country target
Languages
Domain access
Domains & languages
Global Brazil Portugal
• Domain variants allow to change URL
• For SEO reasons, use domain variants instead of subdomains
Domain locale
Language fallback
DE-GL EN-GL PT-BR PT-PT EN-BR
/global/de-gl /global/en-gl /brasil/pt-br /portugal/pt-pt /brazil/en-br
Domains
Domain variants
Menu
Country Editors
Countries (GeoIP)
Google country target
Languages
Domain access
Domain variants
Geo Redirect
Domains & languages
Global Brazil Portugal
• One menu per domain, for permission issues
Domain locale
Language fallback
DE-GL EN-GL PT-BR PT-PT EN-BR
/global/de-gl /global/en-gl /brasil/pt-br /portugal/pt-pt /brazil/en-br
Global Menu Brazil Menu Portugal Menu
Domains
Domain variants
Menu
Country Editors
Countries (GeoIP)
Google country target
Languages
Domain access
Domain variants
Domain menu edit access
Domains & languages
Global Brazil Portugal
• Content Editor per Domain
Domain locale
Language fallback
DE-GL EN-GL PT-BR PT-PT EN-BR
/global/de-gl /global/en-gl /brasil/pt-br /portugal/pt-pt /brazil/en-br
Global Menu Brazil Menu Portugal Menu
Global Manager Brazil Country Manager Portuguese Country Manager
Domains
Domain variants
Menu
Country Editors
Countries (GeoIP)
Google country target
Languages
Domain access
Domain variants
Domain menu edit access
Domains & languages
Global Brazil Portugal
• Route user to correct domain
Domain locale
Language fallback
DE-GL EN-GL PT-BR PT-PT EN-BR
/global/de-gl /global/en-gl /brasil/pt-br /portugal/pt-pt /brazil/en-br
Global Menu Brazil Menu Portugal Menu
Global Manager Brazil Country Manager Portuguese Country Manager
Switzerland, Austria Brazil, Argentina Portugal
Domains
Domain variants
Menu
Country Editors
Countries (GeoIP)
Google country target
Languages
Domain access
Domain variants
Domain menu edit access
Geo Redirect
Domains & languages
Global Brazil Portugal
Domain locale
Language fallback
DE-GL EN-GL PT-BR PT-PT EN-BR
/global/de-gl /global/en-gl /brasil/pt-br /portugal/pt-pt /brazil/en-br
Global Menu Brazil Menu Portugal Menu
Global Manager Brazil Country Manager Portuguese Country Manager
Switzerland, Austria Brazil, Argentina Portugal
/global = Switzerland /brasil = Brazil /brazil = Brazil
/portugal = Portugal
Domains
Domain variants
Menu
Country Editors
Countries (GeoIP)
Google country target
Languages
Domain access
Domain variants
Domain menu edit access
Geo Redirect
Agenda 1
How we met 2
3
4 Domains & Languages
Technical setup
Translations 4
Limitations
4 5 5
4 4 5 6
Who we are
Methodology & Collaboration 4 4 5 7
Conclusions 4 4 5 8
Requirements First Phase:
• 2 languages, Translations made inhouse or with copy & paste to Word files
Second Phase:
• Increase in translations from outsourced translation agencies
• 3rd language not spoken in team
• Adding further languages should be easy
Translations setup
Field translations with entity translation module
Usage of translation management tool (tmgmt)
TMGMT - Three different setups Local translators
• Login to Drupal and see only a translation interface
Translations via xliff (XML)
• Translations can be summarized in a job and exported as xliff (XML)
• Some agencies have their very own translation tools with translation features (Vocabularies per client etc.)
Translators connected via an API
• Interface between agency and tmgmt (reusable then for new Drupal clients)
• Jobs are sent back via API into Drupal
Agenda 1
How we met 2
3
4 Domains & Languages
Technical setup
Translations 4
Limitations
4 5 5
4 4 5 6
Who we are
Methodology & Collaboration 4 4 5 7
Conclusions 4 4 5 8
System Limitations Overall complexity has increased
Usability of tmgmt
• Existing UX hurdles makes it hard and unpleasant to use
• Workflow options would be great: Review process
• Possibility to review translated content in site layout/html
Create translations for already translated strings
• Create list of all used strings for a new language - there is a brand new module for that: tmgmt bulk
Contextual translation not possible
• No connection between translation strings and interface
Agenda 1
How we met 2
3
4 Domains & Languages
Technical setup
Translations 4
Limitations
4 5 5
4 4 5 6
Who we are
Methodology & Collaboration 4 4 5 7
Conclusions 4 4 5 8
Methodology
Mainly fix price offers
Agile approach
• Implementation until budget is used, scope slightly open
• Client as Product Owner has direct contact to developers and designers
Transparency
• Project artifacts and systems are accessible anytime
• Fully visible time tracking
Collaboration Trust as prerequisite for agile and efficient approach
• Do not change project managers within the project
• multiple contacts at agency require great agency internal communication
• problems strengthen the relationship if problems are brought up and are discussed
• One team spirit
Shared collaboration tools (Jira, Confluence) increase efficiency of communication
• Almost no e-mails: Better call or meet than write mails
Drive for improvement
• Debriefing after critical project milestones improve processes
Agenda 1
How we met 2
3
4 Domains & Languages
Technical setup
Translations 4
Limitations
4 5 5
4 4 5 6
Who we are
Methodology & Collaboration 4 4 5 7
Conclusions 4 4 5 8
Conclusions
1. Multilingual and multidomain websites are not trivial – following this approach for Drupal
2. Tmgmt works fine – and it will be improved in future
3. Open and honest communication is key
Thanks for listening.
Now, questions, questions, questions!
Module links
• Domain Variants: https://www.drupal.org/sandbox/vasi/2348051
• Domain Variants Georedirect: https://www.drupal.org/sandbox/vasi/2348063
• Domain Menu Edit Access: https://www.drupal.org/sandbox/vasi/2348055
• TMGMT bulk: https://github.com/AmazeeLabs/tmgmt_bulk
TMGMT Bulk