babel and beyond - professional multilingual solutions with drupal

26
About Wunderkraut Wunderkraut is... Drupal Service Provider, Munich, Germany Drupal-Expertise, Consulting, Training, Implementation Customers in Europe and USA Multiple years of doing Drupal → wunderkraut.com Presenting today: I – Introduction >

Upload: acquia

Post on 19-May-2015

1.292 views

Category:

Business


1 download

TRANSCRIPT

Page 1: Babel and Beyond - Professional Multilingual Solutions with Drupal

About WunderkrautWunderkraut is...

Drupal Service Provider, Munich, Germany

Drupal-Expertise, Consulting, Training, Implementation

Customers in Europe and USA

Multiple years of doing Drupal

→ wunderkraut.comPresenting today:

Reinhard GloggengiesserFlorian Lorétan

I – Introduction >

Page 2: Babel and Beyond - Professional Multilingual Solutions with Drupal

I – Introduction >

Babel and Beyond:Building

multilingual websites

with Drupal

Page 3: Babel and Beyond - Professional Multilingual Solutions with Drupal

I – Introduction >

Agenda

• Principles of multilingual sites

• Questions to ask yourself

• The most important modules

• Language detection and selection

• Integration with external tools and services

• Outlook for Drupal 8

Page 4: Babel and Beyond - Professional Multilingual Solutions with Drupal

What is a multilingual site?

A site in a different language than english?

A site with its interface in multiple languages?

A site with content in multiple languages?

A site with different content for each language or translated content?

A mixture of all of the above?

I – Introduction >

Page 5: Babel and Beyond - Professional Multilingual Solutions with Drupal

A foreign language siteI – Introduction >

Just one language for site visitors

Interface, messages etc. need to be translated

Page 6: Babel and Beyond - Professional Multilingual Solutions with Drupal

Interface in different languagesI – Introduction >

Content stays mostly the same

Navigation, info-blocks, important buttons are translated

Suitable for cases where you want to offer at least *some* internationalization.

Page 7: Babel and Beyond - Professional Multilingual Solutions with Drupal

Different content in multiple languagesI – Introduction >

Content is different depending on the selected language

Switching between languages changes the interface as well

Suitable for cases where you offer highly individual content to different audiences.

Page 8: Babel and Beyond - Professional Multilingual Solutions with Drupal

Translated content in multiple languagesI – Introduction >

Content is the same no matter what is the selected language

Switching between languages changes the interface as well

Suitable for cases where you have ample resources to translate all your content.

Page 9: Babel and Beyond - Professional Multilingual Solutions with Drupal

Question to ask yourself

What resources do you have for doing translations?

Shall untranslated content be visible?

Do languages correlate to regions?

Who will translate?

What will be the default language of the site?

How will language affect the design of the site?

I – Introduction >

Page 10: Babel and Beyond - Professional Multilingual Solutions with Drupal

The most important modulesII – Techniques >

Drupal Core

Locale

Content translation

Contributed

I18n (Internationalization)

Entity translation

Localization update

Translation overview

Localization client

Page 11: Babel and Beyond - Professional Multilingual Solutions with Drupal

Translating interface textsII – Techniques >

Locale module

Manually import, edit and export interface translations

Search all translatable strings

Filter by language and status

Drupal 6 and 7

Page 12: Babel and Beyond - Professional Multilingual Solutions with Drupal

Translating interface textsII – Techniques >

Localization update

Download and update current translations of Drupal core and contributed modules

From localize.drupal.org

Select update strategy

http://drupal.org/project/l10n_update

Drupal 6 and 7

Page 13: Babel and Beyond - Professional Multilingual Solutions with Drupal

Translating interface textsII – Techniques >

Localization client

Change and save translations for interface strings right from the page

No need to enter admin interface

http://drupal.org/project/l10n_client

Drupal 6 and 7

Page 14: Babel and Beyond - Professional Multilingual Solutions with Drupal

Translating contentII – Techniques >

Page 15: Babel and Beyond - Professional Multilingual Solutions with Drupal

Translating contentII – Techniques >

Settings per content type

Different methods for different content types are possible.

Page 16: Babel and Beyond - Professional Multilingual Solutions with Drupal

Translating contentII – Techniques >

Node translation

Content translation module (Drupal core)

New node for each translation

Nodes are mapped together

Page 17: Babel and Beyond - Professional Multilingual Solutions with Drupal

Translating contentII – Techniques >

Field level translation

Entity translation module (drupal.org/project/entity_translation)

Translation of fields instead of nodes

Fields are translatable in core

$node->field_body['en'][0]['value']

Page 18: Babel and Beyond - Professional Multilingual Solutions with Drupal

Field level translationII – Techniques >

Works for:

Nodes

Taxonomy terms

Users

Comments

...

Page 19: Babel and Beyond - Professional Multilingual Solutions with Drupal

Field level translationII – Techniques >

Translatability:

Can be translated:

All fields

Additional per-translation metadata

Can‘t be translated:

Author

Promoted

Creation and modification date

Title...

Page 20: Babel and Beyond - Professional Multilingual Solutions with Drupal

Field level translationII – Techniques >

Title module:

$node->title

$term->name

$term->description $node->field_title

$term->field_name

$term->field_description

Page 21: Babel and Beyond - Professional Multilingual Solutions with Drupal

Field level translationII – Techniques >

Language fallback

Page 22: Babel and Beyond - Professional Multilingual Solutions with Drupal

Language detectionII – Techniques >

By URL example.com/de, /en, /fr ...

example.de, example.com, example.fr

de.example.com, fr.example.com

From session

User preference

Browser setting

Freely sortable!

Page 23: Babel and Beyond - Professional Multilingual Solutions with Drupal

Translations from drupal.orgIII – Using external tools >

localize.drupal.org

Translations for Drupal core, modules, and themes

Everyone can participate!

Source for translations via http://drupal.org/project/l10n_update

Drupal 5, 6 and 7

Page 24: Babel and Beyond - Professional Multilingual Solutions with Drupal

Translation ManagementIII – Using external tools >

Drupal.org/project/translation_management

Provides integration with external translation memories

Icanlocalize.com

Provides dashboard for translations

Drupal 6 and 7

Page 25: Babel and Beyond - Professional Multilingual Solutions with Drupal

Translation Management ToolIII – Using external tools >

drupal.org/project/tmgmt

Different module!

Pluggable architecture for integrating various backends

Google translate (machine)

Bing translator (machine) Nativy (human) MyGengo (human) Supertext (human) One hour translation

(human)

Drupal 7 only

Page 26: Babel and Beyond - Professional Multilingual Solutions with Drupal

The future of multilanguage in Drupal

Multilanguage in Drupal 7:

Lots of different modules

Overlapping functionality

Multilanguage in Drupal 8

Interface and content translation built into core

Cleanup of functionality

III – Outlook >