Keppel Ltd. 1Q 2024 Business Update Presentation Slides
Building Multilingual Websites with Drupal
1. I – Introduction >
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:
Reinhard Gloggengiesser
Florian Lorétan
2. I – Introduction >
Babel and
Beyond:
Building
multilingual
websites
with Drupal
3. I – Introduction >
• Principles of
multilingual sites
• Questions to ask
yourself
• The most important
Agenda modules
• Language detection
and selection
• Integration with
external tools and
services
• Outlook for Drupal 8
4. I – Introduction >
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?
5. I – Introduction >
A foreign language site
Just one language for site
visitors
Interface, messages etc.
need to be translated
6. I – Introduction >
Interface in different languages
Content stays mostly the
same
Navigation, info-blocks,
important buttons are
translated
Suitable for cases where
you want to offer at least
*some* internationalization.
7. I – Introduction >
Different content in multiple languages
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.
8. I – Introduction >
Translated content in multiple languages
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.
9. I – Introduction >
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?
10. II – Techniques >
The most important modules
Drupal Core
Locale
Content translation
Contributed
I18n (Internationalization)
Entity translation
Localization update
Translation overview
Localization client
11. II – Techniques >
Translating interface texts
Locale module
Manually import, edit and
export interface translations
Search all translatable
strings
Filter by language and
status
Drupal 6 and 7
12. II – Techniques >
Translating interface texts
Localization update
Download and update
current translations of Drupal
core and contributed
modules
From localize.drupal.org
Select update strategy
http://drupal.org/project/l10
n_update
Drupal 6 and 7
13. II – Techniques >
Translating interface texts
Localization client
Change and save
translations for interface
strings right from the page
No need to enter admin
interface
http://drupal.org/project/l10
n_client
Drupal 6 and 7
15. II – Techniques >
Translating content
Settings per content type
Different methods for different content types are possible.
16. II – Techniques >
Translating content
Node translation
Content translation module
(Drupal core)
New node for each
translation
Nodes are mapped
together
17. II – Techniques >
Translating content
Field level translation
Entity translation module
(drupal.org/project/entity_tran
slation)
Translation of fields instead $node->field_body['en'][0]['value']
of nodes
Fields are translatable in
core
18. II – Techniques >
Field level translation
Works for:
Nodes
Taxonomy terms
Users
Comments
...
19. II – Techniques >
Field level translation
Translatability:
Can be translated: Can‘t be translated:
All fields Author
Additional per-translation Promoted
metadata Creation and modification
date
Title...
20. II – Techniques >
Field level translation
Title module:
$node->title
$term->name
$term->description $node->field_title
$term->field_name
$term->field_description
22. II – Techniques >
Language detection
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!
23. III – Using external tools >
Translations from drupal.org
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
24. III – Using external tools >
Translation Management
Drupal.org/project/translation
_management
Provides integration with
external translation
memories
Icanlocalize.com
Provides dashboard for
translations
Drupal 6 and 7
25. III – Using external tools >
Translation Management Tool
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
26. III – Outlook >
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