Presentation is loading. Please wait.

Presentation is loading. Please wait.

Translating Drupal Websites Sean Burlington www.PracticalWeb.co.uk Quick run through  Translation generally  Lessons learned  Drupal specifics  String.

Similar presentations


Presentation on theme: "Translating Drupal Websites Sean Burlington www.PracticalWeb.co.uk Quick run through  Translation generally  Lessons learned  Drupal specifics  String."— Presentation transcript:

1 Translating Drupal Websites Sean Burlington www.PracticalWeb.co.uk Quick run through  Translation generally  Lessons learned  Drupal specifics  String translation  Page translation

2 A long Time ago...

3 Nictotinell.com Project developed in custom PHP Design first Then functionality Lastly translation

4 What I learned then Norwegian words are really long.. Text gifs, layout tables, and translations !@#!* Don't take shortcuts Good Practice pays off Balance the tags in every template Don't let translation be an afterthought

5 Still before Drupal

6 How it worked Custom “CMS” 2 languages English/Welsh script.aculo.us In place editing Suprising how may 'odd' pages crop up

7 www.useyourpaths.info

8

9 Complex Pages Long forms Lots of little bits of text The in-place editing really helped for long forms No support calls :-)‏

10

11 Drupal (version 5)‏

12 Manage Strings

13 Locale Module (core)‏ Enhances the t function Make sure everyone reads http://api.drupal.org/api/function/t/5 http://api.drupal.org/api/function/t/5 Choose a standard  Does it include trailing spaces?  What about punctuation?  Avoid t($text) – use t('literal text')

14 format_plural()‏ 1 item – 2 items format_plural($feed->items, '1 item', '@count items')‏ Calls t() internally

15 Problems with Manage Strings Strings originally in code – but translated from database String only available for translation after it has been displayed Hard to find strings What about error messages How do you know when you're finished How to test a translation

16 Solution Potx – extracts strings from t functions Allows you to select by module http://translate.sourceforge.net/wiki/toolkit/csv2po But this gives admin and public text together We wrote an upload languages module (I'm trying to GPL this)‏ This takes a CSV of all languages – and returns a merged CSV including any new translations Useful for deployment

17 Localizer Module

18 Lots of options

19 Localizernode Works with custom node types Just implement the usual hooks (_insert, _update, _delete)‏ Creates a “Translation set” of nodes from the original node

20 Translations tab

21 What it does Creates new nodes that are translations of existing ones Maintains a lookup table Automatically displays the users preferred translation It works nicely But – we had nodes that referred to other nodes on another site via a CCK field and SOAP... Make sure everyone knows about the lookup table at an early stage !

22 In General Plan Check your design Introduce standards early Test dummy translations early Translate late


Download ppt "Translating Drupal Websites Sean Burlington www.PracticalWeb.co.uk Quick run through  Translation generally  Lessons learned  Drupal specifics  String."

Similar presentations


Ads by Google