Is i18n the proper way to approach multi-language versions of core modules, or are there other options?
I've got my multi-language site up and running using i18n and Drupal 5.7 -- Currently, the site is available in English and Arabic -- soon to be expanded with French and Dari.
Everything looks good in terms of LTR content on the English nodes, and RTL on the Arabic nodes -- except when I use the core contact module (and the contact_forms contrib module)
Essentially, the all of the predefined text (your name, subject, send e-mail, etc.) is properly translated into Arabic -- but if I choose to use a custom header for the contact form, it will only appear in English, because there's no place for me to put in the Arabic version of it.
Additionally, when viewing the page in Arabic (mysite.com/ar/contact), everything is still aligned on the left hand side of the page, as opposed to the right, along with the text boxes having a LTR flow instead of RTL.
And, of course, lastly, I can't seem to find a place to put in the text for the translated categories.
Thanks a million,
-Nick
Comments
i18n is mostly about nodes
i18n is mostly about nodes (and to a lesser extent taxonomy and menus.) Other modules, whether Drupal core or 3rd party add-ons may or may not be "language aware". In general, most things get passed through t() - thats the Drupal internal function that translates a string in one language to a corresponding string in another. The strings which it uses to do this can be configured at (site)/admin/settings/locale/string/search What this means is, wherever you see something that should be translated yet isn't, try adding it as a new string and that will most likely fix it.
Currently part of the team at https://lastcallmedia.com in a senior Drupal specialist role.
RTL support for contact form
Hi
As i see in contact_admin_categories() - http://api.drupal.org/api/function/contact_admin_categories/5
the category is not translated , this is not solved even in drupal 7 (maybe try to file an issue )
so the only way to solve this issue is using the weform module , and write a unique form for each language
about the style and alignment this is depends on your theme, you can use the method we use on drupal.org.il for loading the right css file depends on the language used
there are 2 styles : style.css & style-rtl.css
and the right css file is loaded by the language
you can download themes from here
http://drupal.org.il/sites/drupal.org.il/files/salamander-5-rtl.tar
or http://drupal.org.il/sites/drupal.org.il/files/internet_services.tar
have a look at load_rtl_core_css.php and page.tpl.php