39
Multilingual Drupal Gábor Hojtsy, Acquia

Multilingual Drupal

Embed Size (px)

DESCRIPTION

Slides from Drupalcamp Stockholm 2011

Citation preview

Page 1: Multilingual Drupal

Multilingual DrupalGábor Hojtsy, Acquia

Page 2: Multilingual Drupal

1

*

Page 3: Multilingual Drupal

1

*

User interface

Content*

Page 4: Multilingual Drupal

1

*

User interface

Content*

Localization (L10N)

Internationalization (I18N)

Page 5: Multilingual Drupal

1Locale module★Set up languages

★Manage user interface localization

Page 6: Multilingual Drupal

1UI localization★Drupal.org releases

★Localize.drupal.org

★Ftp.drupal.org

Page 7: Multilingual Drupal

1Download and use

★Localize.drupal.org/download

Page 8: Multilingual Drupal

1How many modules?

(1+40)*number of languages

Page 9: Multilingual Drupal

1Updates?

★Download again

★Upload/import again

★No, please no!

Page 10: Multilingual Drupal

1Localization update

★l10n_update module

★Works like update.module

★Protects local changes

Page 11: Multilingual Drupal

1Contribute back

★Join localize.drupal.org group

★Use l10n_client module to touch up and contribute

Page 12: Multilingual Drupal

1Recap

★Locale.module manages languages

★l10n_update must to maintain localizations

★l10n_client to touch up and contribute back

Page 13: Multilingual Drupal

1Hot tip

★Check out l10n_install

Page 14: Multilingual Drupal

1

*

Page 15: Multilingual Drupal

*You are building multiple sites in one site. Yeah.

Page 16: Multilingual Drupal

*

Content, content, content★Not just nodes, ok?

★Think settings, blocks, content types, views, panels, menus, etc.

★User/admin contributions

Page 17: Multilingual Drupal

*

Stumbling block #1★My content type

properties are not translated!

★My forum vocabulary is not translated!

Page 18: Multilingual Drupal

*

Model for translation(0) Leave it alone

(1) Assign language

(2) Assign language + group related items

(3) Translate in-object

Page 19: Multilingual Drupal

*

Model for translation(0) Leave it alone

(1) Assign language

(2) Assign language + group related items

(3) Translate in-object

Eg. localization

Page 20: Multilingual Drupal

*

Apply this to menus(0) Leave it alone

(1) Assign language

(2) Assign language + group related items

(3) Translate in-object

admin area menu

language specific

language variants

same menu, translated labels

Page 21: Multilingual Drupal

*

Apply this to nodes(0) Leave it alone

(1) Assign language

(2) Assign language + group related items

(3) Translate in-object

?

blog post

press releases, polls

og nodes, product nodes, polls

Page 22: Multilingual Drupal

*

Apply this to everything(0) Leave it alone

(1) Assign language

(2) Assign language + group related items

(3) Translate in-object

Page 23: Multilingual Drupal

*

Build it for nodes(0) Leave it alone

(1) Assign language

(2) Assign language + group related items

(3) Translate in-object

locale + setup

translation.module

entity_translation contrib module

Page 24: Multilingual Drupal

*

Wait, entities?★Nodes

★Users

★Comments

★Taxonomy

Page 25: Multilingual Drupal

*

Not that rosy after all★Settings

★Blocks

★Views

★Panels

★Webforms

★Flags

★Rules

★........

Page 26: Multilingual Drupal

*

Build it for nodes(0) Leave it alone

(1) Assign language

(2) Assign language + group related items

(3) Translate in-object

locale + setup

translation.module

entity_translation contrib module

Core

Page 27: Multilingual Drupal

*

Build it for paths(0) Leave it alone

(1) Assign language

(2) Assign language + group related items

(3) Translate in-object

locale

“i18n.module”

N/A

Core

Page 28: Multilingual Drupal

*

Build it for the rest...(0) Leave it alone

(1) Assign language

(2) Assign language + group related items

(3) Translate in-object “i18n.module”

“i18n.module” - i18nstrings

Core

“i18n.module”

Page 29: Multilingual Drupal

*

Build it for contribs(0) Leave it alone

(1) Assign language

(2) Assign language + group related items

(3) Translate in-object

Contrib

Contrib*

Page 30: Multilingual Drupal

*

Enterprise★Translation workflows★Quality control★Outside translators★Translation memory

Page 31: Multilingual Drupal

*

Enterprise★Translation workflows★Quality control★Outside translators★Translation memory

Actions, Rules

“XLIFF Module”

Page 32: Multilingual Drupal

*

Lingotek★Focuses on node translation★Integrates with content translation★Menu item translation with i18n★Translation itself outside of Drupal

Page 33: Multilingual Drupal

*

Lingotek

Page 34: Multilingual Drupal

*

Lingotek

Page 35: Multilingual Drupal

*

Icanlocalize★Translation management module★Set up translators with queues★Queue up content for translation★Local, Google translate or pay-per-word★Can integrate with other providers★Works with more Drupal objects

Page 36: Multilingual Drupal

*

Icanlocalize

Page 37: Multilingual Drupal

1

*

Page 38: Multilingual Drupal

i18n Sprint CampMay 11-15th, i18nsprint.drupalevents.de

Page 39: Multilingual Drupal

Thanks@gaborhojtsy