Building Multilingual Sites with Drupal 7

9,729 views
9,536 views

Published on

Please visit this page to see a recording of this presentation: https://www.acquia.com/resources/acquia-tv/conference/building-multilingual-sites-drupal-0

Published in: Business, Technology

Building Multilingual Sites with Drupal 7

  1. 1. Building Multilingual Websites with Drupal 7Wednesday, 11 January, 12
  2. 2. About Me Suzanne Kennedy Front-end Developer Co-founder of Evolving Web in Montreal evolvingweb.ca @suzanne_kennedyWednesday, 11 January, 12
  3. 3. Languages + Drupal With Drupal, you can build: • Foreign Language Site • Multilingual Site • Multilingual Site with TranslationWednesday, 11 January, 12
  4. 4. Languages + Drupal Foreign language site: • Locale Multilingual site • Internationalization (i18n)  Multilingual site with translation: • Content Translation (Nodes) • Entity Translation (Fields)Wednesday, 11 January, 12
  5. 5. Questions before you start • Is content symmetric across languages? • How is untranslated content treated? • Is language associated with location/region? • How will the content/UI be translated? • What is the default language of the site?Wednesday, 11 January, 12
  6. 6. Symmetric ContentWednesday, 11 January, 12
  7. 7.   Asymmetric ContentWednesday, 11 January, 12
  8. 8. Half-Symmetric ContentWednesday, 11 January, 12
  9. 9. Untranslated ContentWednesday, 11 January, 12
  10. 10. Does Language = RegionWednesday, 11 January, 12
  11. 11. Translation WorkflowWednesday, 11 January, 12
  12. 12. Types of Text to TranslateWednesday, 11 January, 12
  13. 13. What Gets Translated?Wednesday, 11 January, 12
  14. 14. VariablesWednesday, 11 January, 12
  15. 15. Text from ModulesWednesday, 11 January, 12
  16. 16. User-Entered Text SettingsWednesday, 11 January, 12
  17. 17. Content: NodesWednesday, 11 January, 12
  18. 18. Content: EntitiesWednesday, 11 January, 12
  19. 19. Text GroupsWednesday, 11 January, 12
  20. 20. Setting up a Multilingual WebsiteWednesday, 11 January, 12
  21. 21. Installing Languages Configuration > Regional & language > LanguagesWednesday, 11 January, 12
  22. 22. Language Detection & Selection Configuration > Regional & language > Languages > Detection and SelectionWednesday, 11 January, 12
  23. 23. Types of UI Text • Variables • Built-in UI (provided by modules) • Built-in UI (provided by you)Wednesday, 11 January, 12
  24. 24. VariablesWednesday, 11 January, 12
  25. 25. Wednesday, 11 January, 12
  26. 26. Selecting Variables Configuration > Regional & language > Multilingual Settings > VariablesWednesday, 11 January, 12
  27. 27. Translating VariablesWednesday, 11 January, 12
  28. 28. Non-Text VariablesWednesday, 11 January, 12
  29. 29. Translating Text Strings from CodeWednesday, 11 January, 12
  30. 30. Text Strings from CodeWednesday, 11 January, 12
  31. 31. Text Strings from Code Configuration > Regional & language > Translation Interface > TranslateWednesday, 11 January, 12
  32. 32. Text Strings from CodeWednesday, 11 January, 12
  33. 33. Translating User-entered StringsWednesday, 11 January, 12
  34. 34. User-entered StringsWednesday, 11 January, 12
  35. 35. User-entered StringsWednesday, 11 January, 12
  36. 36. User-entered Strings Configuration > Regional & language > Translation Interface > TranslateWednesday, 11 January, 12
  37. 37. User-entered StringsWednesday, 11 January, 12
  38. 38. Translating ContentWednesday, 11 January, 12
  39. 39. Translating ContentWednesday, 11 January, 12
  40. 40. Translating ContentWednesday, 11 January, 12
  41. 41. Node Translation • New node for each translation • Nodes are mapped together • Uses the Content Translation module (core)Wednesday, 11 January, 12
  42. 42. Translating a NodeWednesday, 11 January, 12
  43. 43. Wednesday, 11 January, 12
  44. 44. Wednesday, 11 January, 12
  45. 45. Wednesday, 11 January, 12
  46. 46. Field-Level Translation • Translation of fields instead of nodes • Entity Translation module (contrib) provides the UI • Fields are translatable in coreWednesday, 11 January, 12
  47. 47. Example: ProductsWednesday, 11 January, 12
  48. 48. Example: IssuesWednesday, 11 January, 12
  49. 49. Setting up Field TranslationWednesday, 11 January, 12
  50. 50. Setting up Field TranslationWednesday, 11 January, 12
  51. 51. Adding a TranslationWednesday, 11 January, 12
  52. 52. Adding a TranslationWednesday, 11 January, 12
  53. 53. Field Translation UIWednesday, 11 January, 12
  54. 54. Translating the TitleWednesday, 11 January, 12
  55. 55. Translating the TitleWednesday, 11 January, 12
  56. 56. Enabling Language SwitcherWednesday, 11 January, 12
  57. 57. Comment FilteringWednesday, 11 January, 12
  58. 58. Comment FilteringWednesday, 11 January, 12
  59. 59. Translate Other EntitiesWednesday, 11 January, 12
  60. 60. Configure Entity TranslationWednesday, 11 January, 12
  61. 61. Translate UsersWednesday, 11 January, 12
  62. 62. Synchronize TranslationsWednesday, 11 January, 12
  63. 63. Views Translation FiltersWednesday, 11 January, 12
  64. 64. Unfiltered ViewWednesday, 11 January, 12
  65. 65. Adding a FilterWednesday, 11 January, 12
  66. 66. Filtered ViewsWednesday, 11 January, 12
  67. 67. Translating Other ElementsWednesday, 11 January, 12
  68. 68. Other Elements to Translate • Blocks • Field elements (i.e. help text, default values, options) • Menu items • Taxonomy terms • PathsWednesday, 11 January, 12
  69. 69. BlocksWednesday, 11 January, 12
  70. 70. Block Translation • Translate custom blocks • Uses the Block Translation module in the i18n suite • Allows you to target blocks for certain languagesWednesday, 11 January, 12
  71. 71. Block TranslationWednesday, 11 January, 12
  72. 72. Block Translation UIWednesday, 11 January, 12
  73. 73. Blocks Per LanguageWednesday, 11 January, 12
  74. 74. Field Translation (translating field settings)Wednesday, 11 January, 12
  75. 75. Field Translation • Translating field settings (label, help text, default text) • Uses the Field Translation module in the i18n suite • Only translates core field settings (not date fields, file fields, etc.)Wednesday, 11 January, 12
  76. 76. Field TranslationWednesday, 11 January, 12
  77. 77. Field TranslationWednesday, 11 January, 12
  78. 78. Menu ItemsWednesday, 11 January, 12
  79. 79. Menu Translation • Allows you to translate menu items OR target a menu at a single language • Uses Menu Translation module in the i18n suiteWednesday, 11 January, 12
  80. 80. Menu Translation Menu Options: • Fixed Language • Translate and Localize Menu items • Linked to nodes • Translate custom menu itemsWednesday, 11 January, 12
  81. 81. Menu TranslationWednesday, 11 January, 12
  82. 82. Menu TranslationWednesday, 11 January, 12
  83. 83. TaxonomyWednesday, 11 January, 12
  84. 84. Options per VocabularyWednesday, 11 January, 12
  85. 85. Translating a TermWednesday, 11 January, 12
  86. 86. Other Multilingual ModulesWednesday, 11 January, 12
  87. 87. Localization UpdateWednesday, 11 January, 12
  88. 88. Localization ClientWednesday, 11 January, 12
  89. 89. Translation OverviewWednesday, 11 January, 12
  90. 90. Challenges • Choosing contributed modules • Translating custom elements (Webforms) • Multilingual audiences • Improve Translation UI • Out-sourced translation workflows • Keeping track of UI strings to translateWednesday, 11 January, 12
  91. 91. What’s Next?Wednesday, 11 January, 12
  92. 92. D8 Multilingual InitiativeWednesday, 11 January, 12
  93. 93. Learn MoreWednesday, 11 January, 12
  94. 94. Learn More evolvingweb.ca/trainingWednesday, 11 January, 12
  95. 95. Resources Documentation on drupal.org http://drupal.org/documentation/multilingual My Blog Posts about D7 Multilingual http://evolvingweb.ca/story/drupal-7-multilingual-whats-new-i18n http://evolvingweb.ca/story/content-translation-drupal-7 Gabor Hojtsys Posts about Multilingual D7 http://hojtsy.hu/blog/2011-jan-19/drupal-7039s-new-multilingual-systems-part-1- basics Presentation at DrupalCon London http://london2011.drupal.org/conference/sessions/multilingual-drupal-solutions-use- cases-and-modules Drupal 8 Multilingual Initiative (with Video) http://drupal.org/node/1260534Wednesday, 11 January, 12

×