291
BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7

BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

  • Upload
    others

  • View
    14

  • Download
    0

Embed Size (px)

Citation preview

Page 1: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7

Page 2: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

About us!

Page 3: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Getting to know you...

Page 4: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

What are your multilingual needs?

Page 5: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

What you need

Page 6: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Check• A fresh Drupal 7 instance installed locally• Download of module files

Page 7: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Previous experience• Familiar with Drupal site building?• Experience setting up content types and

Views• Optional: Experience creating a simple

glue module or custom theme?

Page 8: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

What’s in the box?

Page 9: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

What you have• Your local development environment• Your manual• Browser opened to drupal.org *

* You’re always logged in, right?

Page 10: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Resources: Code & files• Go to https://github.com/acquia/training/• Click “themes” download all files

Page 11: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

What we’ll do today

Demos and presentations

Exercises in manual

Review and practice

Page 12: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

What are we building?

Page 13: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

ScheduleWhat we’ll do today

Page 14: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Schedule• Setting up a multilingual site, installing a

language• Making the user interface multilingual• Configuring multilingual content• Building blocks for many languages• Translation workflows for content + UI• Extending Drupal multilingual

Page 15: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

MULTILINGUAL USER INTERFACES

Session 1

Page 16: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Multilingual Requirements

Page 17: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

• aka i18n• Developing a website that enables

localization. • Separating elements that should be

localized so they can be specified for each locale.

Internationalization

Page 18: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

• aka l10n• Process of adapting a website for a

certain locale including:• Text and graphics• Numeric, date and time formats• Currency• Time zones• Legal requirements

Localization

Page 19: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translation• The act of translating the text of a website

into another language• Part of the localization process

Page 20: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

• A website that displays information in multiple languages

• Involves internationalization of functionality and localization of content and settings

Multilingual Website

Page 21: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

What kind of site are you building?

• How many languages do you need to support?

• Does the user interface need to be fully translated?

• Are there elements other than text that have to be ‘localized’?

• Do you have content in all languages? Is all the content translated?

Page 22: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Lots of reasons for multilingual websites

• Reach a wider audience• Search engine

optimization• Government regulations• Company policy

Page 23: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Personnel

• User-Interface Translators

• Content Translators

• QA for each Language

• Translation Manager

Resources

• Contributed Translations (localize.drupal.og)

• Machine Translation

Multilingual Resources

Page 24: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

What is Multilingual Drupal?

Page 25: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Foreign-language site

Page 26: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Multilingual Site

Page 27: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Multilingual Site with Translation

Page 28: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Multilingual Modules• Core modules:

• Locale• Content Translation

• Contributed Modules:• i18n (Internationalization)• Entity Translation

• Others provide additional functionality

Page 29: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Installing a New Language

Page 30: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

• Drupal out-of-the-box is in English• Text in modules and themes• Text stored in the database

• To change the language of Drupal you need to install another language

The Language of Drupal

Page 31: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Building a website in another language

Page 32: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Configuration > Regional & language > Languages

Installing Languages

Page 33: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Configuration > Regional & language > Languages

Installing Languages

Page 34: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Configuring a Language

Page 35: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Language Detection

English UI French UI

When you arrive on the site, which language to show?

Page 36: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Drupal Core is Language Aware

The t function is defined in bootstrap.inc. From the beginning of each page load, Drupal knows what language to render your site in.

Page 37: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Language Detection & Selection

Using the URL as the primary method of language detection

Page 38: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Path Prefix vs. DomainPath prefix: example.com/fr/user

Domain: exemple.com/user

Domain: fr.example.com/user

Page 39: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Path Prefix vs. DomainConfiguration > Regional & language > Languages > French

Configure the path prefix or domain for each language

Page 40: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Language Detection & Selection

The default language is used if there’s no language in the URL

Page 41: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Language Detection & Selection

You can also enable other methods of detection

Page 42: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

example.com/user

Detection and Selection

Page 43: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Detection and Selectionexample.com/fr/user

Page 44: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Configuration > Regional & language > Languages

Choosing a Default

Page 45: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Switching Languages

Page 46: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Your turn• Install the French language on your site• Configure the Detection and Selection

settings• Add a language switcher to the site.

Page 47: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Types of Text in Drupal

Page 48: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Built-in interface (User-Defined)

Types of TextBuilt-in interface (Code)

Content

Variables

i18n Strings

Page 49: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Built-in interface (User-Defined)Built-in interface (Code)

ContentVariables

i18n Strings

i18n Strings

Translation Interfacesin Drupal

Page 50: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translating Built-in Interface Text (from Code)

Page 51: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Built-in Interface (Code)

Page 52: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Using Translations from Localize.Drupal.org

Page 53: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Use Localize.Drupal.org• Each language has a project• Translators contribute translations in their

language• Some projects have better coverage than

others.

Page 54: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Localize.Drupal.org Project Page

Page 55: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

What is a .po file?• Text file storing the

original text and the translations.

• A .pot file is a template file, containing only the original text to be translated.

Page 56: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Upload .po files to Drupal

Page 57: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Overriding Translations in Drupal

Page 58: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Overriding a Translation

Page 59: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Searching for the String

Page 60: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Editing the Translation

Page 61: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Testing the Change

Page 62: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Your turn• Download translations from

localize.drupal.org and upload them to your site

• Override a translation in Drupal

Page 63: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Use Localization Update

Page 64: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Localization Update

drupal.org/project/l10n_update

Page 65: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Localization Update

Page 66: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translation Overview

Page 67: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Your turn• Use the Localization Update module to

pull in more translations from Drupal.org

Page 68: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Use Localization Update

Page 69: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Localization Update

drupal.org/project/l10n_update

Page 70: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Localization Update

Page 71: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translation Overview

Page 72: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Your turn• Use the Localization Update module to

pull in more translations from Drupal.org

Page 73: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Use Localization Client

Page 74: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Use Localization Client

drupal.org/project/l10n_client

Page 75: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Sharing Your Translations

Add your API key from localize.drupal.org to contributeyour translations back to the community.

Page 76: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Demo!

Page 77: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translating Built-in Interface Text (User-Defined)

Page 78: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

User-Defined Text

Text entered via the Views UI

Page 79: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

User-Defined TextText entered via the Flag UI

Page 80: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

‘Recent Articles’

‘Articles récents’

Original Text French Translation

Added to the Views UI

Added via the Translate Interface UI

Drupal Database

User-Defined Text

Page 81: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translate Interface

Page 82: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Add the Translation

Page 83: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Refresh the Translations

Page 84: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Source LanguageConfiguration > Regional and language > Multilingual settings > Strings

Page 85: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Configuration in the Default Language

Page 86: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translating Variables

Page 87: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translating Variables

Page 88: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Configuration > Regional & language > Multilingual Settings > Variables

Selecting Variables

Page 89: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translating Variables

Page 90: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Your turn• Add a site title and slogan and translate

them.

Page 91: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

MULTILINGUAL CONTENT

Session 2

Page 92: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

What content experience are you building?

Page 93: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Fully Symmetric Experience

English Polish

Page 94: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Asymmetric ExperienceEnglishFrench

Page 95: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Mixed Language Experience

French

English

Page 96: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

What about untranslated content?

Page 97: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Show Untranslated Content

Page 98: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

EnglishFrench

Hide Untranslated Content

Page 99: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Content Translation Methods

Page 100: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Content Translation Methods

Node-Level Translation Field-Level Translation

Node 1(English)

Node 2(French)

Node 3(German)

Node 1

Title (English)

Title (French)

Title (German)

Image

Title (French)

Title (English)

Title (German)

Image Image Image

Page 101: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Node-Level Translation

Page 102: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

• Content Translation module (Drupal core)• New node for each translation• Nodes are mapped together in a translation

set

Node-Level Translation

Page 103: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translating Nodes

Node 1(English)

Node 2(French)

tnid = 1 tnid = 1

Node 3(German)

tnid = 1

Translation Set

Page 104: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Enabling Node-LevelTranslation

Page 105: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translating a Node

Page 106: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Node PropertiesIndependent node properties per language

Page 107: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Use Cases• Asymmetric menus per language• Language-specific features (flagging,

sign-up, moderation)• Curation of content per language

Page 108: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

• Everything is language-specific by default• Need to ‘synchronize’ data between

nodes• Too many nodes• Doesn’t work for modelling language-

neutral things (groups of people, products, data)

• Only works for nodes

Limitations of Node-Level Translation

Page 109: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Your turn• Configure basic pages on your site to use

node-level translation

Page 110: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Field-Level Translation

Page 111: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

• Translation of fields instead of nodes • Entity Translation module (contrib)

provides the UI• Fields are translatable in core

Field-Level Translation

Page 112: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translating Fields

A single node, with translations of certain fields.

Title (English)

Node 1

Title (French)

Title (German)

Body (English)

Body (French)

Body (German)

Image Author

Post Date Facebook Likes

Language Specific (Fields) Language Neutral

Page 113: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Setting up Field Translation

Page 114: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Setting up Field Translation

Page 115: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translating the Title

Page 116: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Adding a Translation

Page 117: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Adding a Translation

Page 118: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Comment Filtering

• When does it make sense to show all comments regardless of language?

• Would you ever consider translating comments?

• Do comments have language neutral fields that are valuable to users who don’t speak the language?

Page 119: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Comment Filtering

Page 120: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Comment Filtering

Page 121: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Language Neutral Features

• Flags

• Voting Data

• Signups

• Nodequeue or Draggable Views Data

• Moderation / Scheduler settings

• Entity references

• Panels nodes’ layout

• Content Access

• Social Media Integration (Add This)

• Views Bulk Operations

Page 122: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Your turn• Set up field-level translation for articles• Translate some article fields and filter your

comments by language

Page 123: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Choosing a Translation Method

Page 124: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Event

Page 125: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Language-specific

• Title• Description • What to bring • URL

Language-neutral

• Image• Sign-up List• Sign-up Deadline• Published Status• Date/Time• Location• Organizer

Event

Page 126: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Issue

Page 127: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Language-specific

• Title• Description • URL

Language-neutral

• Bookmark (flag)• Status• Priority• Assignee• Comments

Issue

Page 128: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

List Item

Page 129: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Language-specific

• Text• Alt text• URL

Language-neutral

• Order (Nodequeue, Draggable Views)

• Image• Published status

List Item

Page 130: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Planning Content Translation

Page 131: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Your turn: Planning Multilingual Content

Destination Page

Destination Name

Photos

UserBlog Posts

User Bookmarks

Articles

User Blog Post

Author Related Destination

Comments

Blog Content

Page 132: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Content Translation Methods

Node-Level Translation Field-Level Translation

Node 1(English)

Node 2(French)

Node 3(German)

Node 1

Title (English)

Title (French)

Title (German)

Image

Title (French)

Title (English)

Title (German)

Image Image Image

Page 133: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Questions to Ask• Will this content be translated?• If not, will it be displayed in other

languages?• Which translation method to use?• Which fields need translation/localization?• Are entities referenced from this content

type translated?

Page 134: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Your turn• Plan out the addition of destination pages

and user blogs to the GlobalTravel website

• Map out what field types/translation methods you’ll use the represent this content

• Report back to the group

Page 135: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translating Other Entity Types

Page 136: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translate Core EntitiesTranslation of entities from core modules

Page 137: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translate Users

Permissions

Configure Fields Translate Users

Page 138: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translate Users: Use Cases

• Team member profiles• Multilingual community site• Users who offer a service to users in more

than one language

Page 139: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translate Users: Drawbacks

• Single permission for users (can translate any user entity)

• UI is not self-explanatory

Page 140: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translate TermsConfigure Fields

Permissions

Translate Terms

Page 141: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translate Terms:Use Cases

• Any vocabulary that is symmetric across languages:• Categories• Destinations• Medical Topics

Page 142: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translate Terms:Drawbacks

• Time-consuming to use translation UI• Single permission for translating all

vocabularies• Alphabetical listings in Views will use

source language

Page 143: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translate CommentsConfigure Fields

Permissions

Translate Comments

Page 144: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translate Comments:Use Cases

• Travel website (machine translation of reviews)

• Government website (human translation of questions + answers)

Page 145: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translate Other Entities

Entities need to have fields and include translation support in hook_entity_info()

Translation of entities from contributed modules

Page 146: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Product

Page 147: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Language-specific

• Title• Description • URL

Language-neutral

• SKU• Status • Image• Price• Quantity Remaining• Shopping Cart Status

Product

Page 148: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translatable Commerce Product

Page 149: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Product

Page 150: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Product

Page 151: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Your turn

Translate categories using entity translation

Page 152: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Multilingual Views

Page 153: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

French

English

Mixed-Language ViewsDo you want the viewto show untranslatedcontent?

Page 154: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Filtering by Language

Entity Translation Content Translation

Page 155: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Field Options in Views

Page 156: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Your turn• Create a view to display page nodes in

the current language only• Create a view to display articles

Page 157: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translating the Homepage

Page 158: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Multilingual HomepageOptions:• Filter content to display in the current

language only• Make the default frontpage a multilingual

variable + create a page for each language• Set up a multilingual view at a single path

to use as the homepage

Page 159: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Multilingual Selection

Page 160: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translate the Frontpage

Page 161: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Your turn• Configure multilingual selection options• Set up a the default frontpage as a

multilingual variable

Page 162: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

MULTILINGUAL STRUCTURE

Session 3

Page 163: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Overview• What else in Drupal needs translation?

• Field settings• Blocks• Paths• Date Formats• Emails to Users• Menus

Page 164: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Text Groups

Menu

Blocks

Fields

Taxonomy

Page 165: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translating Field Settings

Page 166: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Field Settings

/fr/node/add/article

Label

Description

Page 167: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translating Field Settings• Field Translation module (i18n)• Translate field settings

• Label• Description• Options• Default Value

• Only core field settings

Page 168: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translate Interface

Page 169: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Field Translate Tab

Page 170: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translate Field Settings

Page 171: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translating Options

Page 172: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Field Display Formatters

Change the formatter so the translated field value is displayed

Page 173: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Your turn• Translate field settings on your article

content type.

Page 174: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translating Blocks

Page 175: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

• Block Translation module (i18n)

• Make blocks translatable

• Display blocks only in certain languages

Translating Blocks

Page 176: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translating Blocks

Page 177: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translating Blocks

Page 178: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translating Blocks

Page 179: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translating Blocks• Create a translatable block for all

languages on your site.• Create a block targeting a specific

language.

Page 180: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translating Paths

Page 181: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Path Translation

Page 182: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Pathauto PatternsCreate a pathauto pattern per language

Page 183: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Transliteration

Articles Récents = articles-recents

Page 184: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Transliteration

Articles récents = articles-recents

Page 185: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Your turn• Set up pathauto for multilingual content• Use transliteration for pathauto• Use the Path Translation module for the

Recent Articles view

Page 186: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Multilingual Navigation

Page 187: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translating Menus• Menu Translation module (i18n)• Menu per language OR• Menu items per language

Page 188: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translating Menus

Page 189: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Menu Link to a Node

Translating Menus

Page 190: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Menu Link to a Single-Language Pagei.e. Events View

Translating Menu Items

Page 191: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Menu Link to a Generic Pagei.e. Home Page

Translating Menu Items

Page 192: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translating Menu Items

Page 193: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

TRANSLATING CUSTOM AND CONTRIB MODULES

Session 4

Page 194: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Modules to Extend Drupal’s Multilingual Functionality

Page 195: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Adding Functionality

+Site MapContact Form Meta Tags

Page 196: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

• Translation of form labels

• Recipients per language?

• What other language is involved?

Contact Form

Page 197: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Meta Tags

• How are meta tags attached to each node?

• Will translators have permission to add them?

Page 198: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Is this module multilingual-compatible?

Page 199: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Your turn• Take a sample module you’re considering

using for your current project.• How would you determine whether it’s

multilingual-compatible?

Page 200: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Your turn• What type of text does the module introduce?

• Does the module introduce data that will need to be translated that isn’t an entity?

• Does the module add variables to the system table?

• Does the module provide any new content types?

• How many of the built-in module strings are translated for French?

• Can you find any unresolved multilingual-related issues in the module’s issue queue?

Page 201: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Creating a glue module for a multilingual website

Page 202: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Using the t function

print t(‘Welcome to GlobalTravel’);

Page 203: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

!variable

<?php $message = t("If you don't want to receive such e-mails, you can change your settings at !url.", array('!url' => l(t('My account'), "user/$account->uid"))); ?>

The $account variable includes HTML

Page 204: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

@variable

<?php $title = t("@name's blog", array('@name' => $account->name)); ?>

The @name variable is run through check_plain

Page 205: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

%variable

<?php $message = t('%name-from sent %name-to an e-mail.', array('%name-from' => $user->name, '%name-to' =>$account->name)); ?>

The %name-from and %name-to are emphasized text (wrapped in <em>)

Page 206: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Using Drupal.t in jQuery

var txt = Drupal.t("You are viewing the site in !language.", params);

Page 207: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Multilingual Theming

Page 208: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

• Translate text that isn’t visible• Keep text out of images• Use selectors for languages (only when

absolutely necessary)• Keep text overrides in theme preprocess

functions/text files • Use the t function in the theme

Theming Tips

Page 209: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

English French

Space Requirements

Page 210: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Right to Left LanguagesEnglish

Hebrew

Page 211: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Localizing Date Formats

Page 212: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

What are date formats? • Friday, July 23rd, 2012 6:30pm• vendredi le 23 juillet, 2012 18:30• 07/23/2012 6:30pm• 2012-07-23 18:30

Page 213: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Date Format Documentation

http://php.net/manual/en/function.date.php

Page 214: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Define new formats

Page 215: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Localizing Date Formats

Page 216: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Date formats in Views

Page 217: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Your turn• Create a localized date format for French• Add dates to the Recent Articles View

Page 218: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

User Language Preferences

Page 219: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

User Language Preference

Page 220: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Set on Account Creation

Page 221: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Used in Language Detection

Page 222: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Language Preference for User Emails

Page 223: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

TRANSLATION WORKFLOWS

Session 5

Page 224: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translation Workflows

Page 225: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Cost of Translation• Time-consuming • Expensive• How can you speed up the process and

reduce the amount of text to be translated?

Page 226: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

What are Translation Workflows?

Translator

Page 227: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Benefits of an External Translation Tool

• Translation teams are used to an external tool

• Tracks cost of translation• Provides integration with machine/

community sourced translations• Advanced tools (translation memory)• Integration with multiple translation teams

Page 228: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Benefits of an Internal Translation Tool

• Easy to set up• Add translations as you go• Less costly• Takes advantage of Drupal’s content

management tools• Easier to provide context

Page 229: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Discussion• Which approach would work better at

your organization?

Page 230: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translation Workflows for UI Strings

Page 231: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translation Workflow for UI Strings

1. Pull in contributed translationsfrom localize.drupal.org

2. Override translations +add translations of custom strings

Translator

Page 232: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Overriding/Adding Translations Outside of Drupal

Page 233: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Use POEdit to Translate

Page 234: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translations Spreadsheet

Page 235: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translating Outside Drupal

Translator

CSV Template

CSV with Translations

.po file for each language

Page 236: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Re-using Your Translations

Page 237: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translating User-Defined Strings

Page 238: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

User-Defined Strings• Strings added in the admin UI (not in

code)• For example: Views text

Page 239: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Other User-Defined Strings

• Block text• Menu items• Field settings

Page 240: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translate Interface

Page 241: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translate Tab

Page 242: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translate Tab

Page 243: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

User-Defined Strings

Page 244: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Challenges• Giving translators access to block/field/

menu configuration• Allowing translators to use all input formats• Changing the original values• Changing the default language

Page 245: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translation Workflows for Content

Page 246: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Content Translation Workflow

Author Translator

1. Author creates a new node 2. Translators adds a translation

Page 247: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translation Workflows for Content: Translating in Drupal

Page 248: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translation Interface in Drupal

Page 249: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Node-Level vs. Field-Level Translation

Field-Level Translation Node-Level Translation

Page 250: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Creating a Translation Workflow from Scratch

• Permissions for translators• Rules and Flag to trigger translation

requests• Views for Translators

Page 251: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Permissions for Translation

• Content Translation: Translators need to be able to create content

• Entity Translation: Permission to edit the entity

• No granular translation permissions per content type (use i18n_access)

Page 252: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Challenges• Different UI for Entity Translation/Content

Translation (Confusing)• Professional translators need to learn

Drupal• Need to build system for reviewing

translations

Page 253: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Typical UI for Translators

Page 254: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Your turn• Set up permissions for translators• Create a view for translators

Page 255: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translation Workflows for Content: TMGMT Module

Page 256: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translation Management Tool (TMGMT)

drupal.org/project/tmgmt

Page 257: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translation Management Tool (TMGMT)

Drupal

Page 259: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Microsoft Translator

Page 260: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Microsoft Translator

Page 261: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Requesting Translations

Page 262: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Choosing a Translator

Page 263: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Review Translation

Page 264: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Review Translation

Page 265: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Accepted Translation Appears

Page 266: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translate in Bulk

Page 267: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translation ‘Jobs’

Page 268: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Benefits of TMGMT• Field-level and node-level translation• Also translate i18n strings (in

development)• Easy to configure• Human/machine translator plugins• Write your own translator plugin

Page 269: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translation Workflows for Content: Lingotek Module

Page 270: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Lingotek Module

drupal.org/project/lingotek

Page 271: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Lingotek

Drupal

IndividualTranslator

Page 272: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Create a Lingotek Account

Page 273: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Connect to Machine Translation Tool

Page 274: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience
Page 275: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Create a Project

Create a new project for each Drupal website

Page 276: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Lingotek Translation Per Content Type

Disables manual translation of content

Page 277: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Lingotek Translation Tool• Enables translation at the field-level• Need to flag fields as being translatable

Page 278: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Send a Node for Translation

Page 279: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translating a NodeSwitch the site to French, and you’ll see a message:

Click on the link to go to the Lingotek Translation UI

Page 280: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Updating the Translation

In order to accept the translation and publish it to the site, you have to click ‘Update’.

Page 281: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Translation Appears

Page 282: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Project Status

Page 283: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Benefits of Lingotek• Translation memory• Sophisticated translation workflow• Advanced feature set (i.e. settings for

tokens to ignore, etc.)• Community-sourced translations• Provides a UI for professional translators

Page 284: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Importing Content

Page 285: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Modules for Importing• Migrate + Migrate Extras• Entity Translation: Feeds

Page 286: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

REVIEWSession 8

Page 287: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Multilingual Checklist

• Installing languages• Translating the Interface• Translating content• Setting up multilingual building blocks• Configuring a translation workflow• Auditing/configuring contrib modules

Page 288: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Before you start• How many languages?• Who are the translators?• How will content be translated? What

method should be used?• Choose a default language that makes

sense• Have a plan for translation workflow +

adding languages in the future• Leave extra time for testing contrib

modules

Page 289: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

What to Avoid?• Changing the default language • Passing variables through the t function• Putting non-English text in code

Page 290: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Feedback please!http://acquia.com/training-feedback

Page 291: BUILDING MULTILINGUAL WEBSITES WITH DRUPAL 7€¦ · Previous experience • Familiar with Drupal site building? • Experience setting up content types and Views • Optional: Experience

Q + A