Your SlideShare is downloading. ×
  • Like
  • Save
Internationalization by dominik-jais
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Internationalization by dominik-jais

  • 1,044 views
Published

Internationalization in Drupal 6 mit i18n. Ein Stieg der eine einfache Übersicht bietet

Internationalization in Drupal 6 mit i18n. Ein Stieg der eine einfache Übersicht bietet

Published in Education
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
1,044
On SlideShare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
0
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Internationalization Eine Übersicht über Core und i18n By Dominik Jais http://dominikjais.com http://new-tronic.com http://www.twitter.com/snicers http://new-tronic.com
  • 2.
    • http://drupal.org/project/i18n
    • Erhältlich für D5 & D6
    • Viele zusätzliche Module (auch ohne i18n): http://drupal.org/project/modules?filters=tid%3A97&solrsort=sis_project_release_usage%20desc
    • Aktive Issue Queues
    • Handbook für i18n: http://drupal.org/node/133977
    • Maintainers von i18n: Jose Reyero , Hass, podarok
    • i18n weil das Wort internationalization zwischen i und n 18 Buchstaben enthält.
  • 3.
    • Core Module (D6)
    • Locale
    • Content Translation
    • Locale
    • Ermöglicht die Übersetzung der Benutzeroberfläche
    • Content Translation
    • Ermöglicht die Übersetzung von Inhalten
  • 4.
    • Die Liste der Sprachen unter admin/settings/language bieten die wichtigsten Punkte für die Verwendung von verschiedenen Sprachen:
    • An und Abschalten einzelner Sprachen
    • Festlegen der Standardsprache
    • Gewichtung
    • außerdem lassen sich die Einstellungen der einzelnen Sprache via „edit“ vornehmen
  • 5. Edit Language Via „Edit Language“ kommt man zur Einstellung der gewählten Sprache Language Code Legt den Code der Sprache fest, siehe auch http://www.ietf.org/rfc/rfc4646.txt Liste der Ländercodes: http://www.iso.org/iso/country_codes/iso_3166_code_lists/english_country_names_and_code_elements.htm Language Name in English Legt den Namen fürs System fest Native Language Name Legt den Namen fest den der Benutzer sieht Path Prefix Fügt dem Pfad ein Kürzel hinzu. Dient der Unterscheidung zwischen verschiedenen Sprachen
  • 6. Edit Language 2 Language Domain Siehe Path Prefix. Dient der Unterscheidung von Sprachen anhand von Domains, z.B. www.shirtsofberlin.de für Deutsch und www.shirtsofberlin.com für Englisch Direction Legt die Fließrichtung des Textes fest. Wichtig bei z.B. asiatischen Sprachen.
  • 7. Sprachen lassen sich einfach via „Add Language“ hinzufügen. Dazu wählt man die Sprache aus der Liste aus und fügt sie hinzu. -------------- Durch das hinzufügen einer Sprache hat diese noch keinen Inhalt außer den vom Core bereitgestellten. -------------- Es besteht außerdem die Möglichkeit eine Sprache hinzuzufügen welche sich nicht in der Liste befindet. -> Custome Language -> Es sind zusätzliche Angaben notwendig
  • 8. Unter „Configure“ finden sich die Einstellungen zur „Language Negotiation“. Diese legt fest wie sich die aktiven Sprachen in der URL verhalten. None – es passiert nichts, die URL bleibt gleich Path prefix only – das Länderkürzel der jeweiligen Sprache wird dem Pfad vorangestellt + Language fallback – siehe oben + Absicherung über Ausweichlösung, Default (?) Domain name only – Verteilung von Sprachen auf Domains
  • 9. http://new-tronic.com
    • Unter /admin/build/translate findet sich eine Übersicht der aktiven Sprachen. Zusätzlich sieht man wie viel Prozent der durch das System als übersetzbar bereitgestellten Strings bereits übersetzt sind.
    • Das „Translation Interface“ bietet weitere Punkte welche man gut nutzen kann:
    • Suche
    • Import
    • Export
  • 10. http://new-tronic.com Import Translation Für den Import wählt man zuerst eine Datei auf dem lokalen Rechner aus. Der Import erfolgt in die zu wählende Sprache. Aktive Sprachen befinden sich immer oben in der Auswahlliste. Core Module erlauben nur den Import in das „Built-in-Interface“ Es ist der Zielsetzung überlassen ob man bestehende Strings überschreibt oder einfach nur neue hinzufügt. Der Export erfolgt umgekehrt. Neben PO Dateien können POT Dateien Exportiert werden.
  • 11. http://new-tronic.com
    • I18n
    • I18n bietet eine Vielzahl von Modulen die den Drupal Core im Umgang mit
    • Sprachen unterstützen:
    • Block translation
    • CCK translation
    • Content Type translation
    • Internationalization (i18n Hauptpaket)
    • Menu translation
    • Poll aggregate
    • Profile translation
    • String translation
    • Synchronize translation
    • Taxonomy translation
    • Views translation
  • 12. Multilingual System Ist i18n aktiviert steht in admin/settings/language/ eine weitere Karteireiter „Multilingual System“ bereit. Content Selection Mode Ermittelt welcher Inhalt in abhängigkeit von der aktuellen Seitensprache und der Standardsprache der Website angezeigt wird. Content Translation Links I18n schaltet „Language switcher“ in die Node mit auf. Dies kann man durch „Hide content translation links“ abschalten. Außerdem besteht die Möglichkeit die Interfacesprache bei Erstellung einer Node in der Sprache der zu erstellenden Node anzuzeigen.
  • 13. http://new-tronic.com
    • Exkurs Content Selection Mode - Sprachauswahlmodus
    • Aktuelle Sprache und Sprachneutral.
      • Wird durch die Vorauswahl der Sprache via Sprachauswahlblock festgelegt. Alle Nodes deren keine Sprache zugewiesen wurde sind Sprachneutral.
    • Gemischte aktuelle Sprache (wenn verfügbar) oder die standardmäßige Sprache (wenn nicht) und Sprachneutral.
      • größte mögliche Sicherung gegen „leeren“ Inhalt. Es ist quasi immer ein Inhalt sichtbar.
    • Nur die standardmäßige Sprache und Sprachneutral.
      • Nur die Sprache welche vorher als „Default“ – „Standard“ festgelegt wurde und sprachneutrale Nodes
    • Nur die aktuelle Sprache.
      • Kein Rückfall. Sprache der Nodes muss eindeutig deklariert sein.
    • Aller Inhalt. Es treffen keine Sprachbedingungen zu.
      • Von mir noch nicht getestet
  • 14. http://new-tronic.com
    • Import via i18n
    • Sind die verschiedenen i18n Module aktiviert bietet sich beim Import nun ein anderes Bild.
    • Es kann nun auch in
    • Blöcke
    • Menüs
    • Views
    • Taxonomie, etc
    • importier werden
    • Auch beim Export stehen die durch die Module bereitgestellten „Text Group“ zur Verfügung.
    • Die Such ist nun auch in den verschiedenen Bereichen möglich.
  • 15. Node Types konfigurieren Innerhalb der NodeType finden sich die „Multilingual Options“ Diese bieten eine Vielzahl von Einstellmöglichkeiten. Die zu treffende Wahl ergibt sich aus der Aufgabenstellung. Ist das „Synchronisations-“ Modul aktiv können Node Informationen wie z.B. Autor, Status, CCK Felder, zwischen den Übersetzungen synchronisiert werden. -> Finden eine Änderung des Autors in der Node A-de statt wird diese bei aktivierter Synchronisation in Node A-en mit übernommen.
  • 16. Node Types konfigurieren 2 In den „Workflow Settings“ muss der „Multilingual Support“ aktiviert werden. Enabled Inhalt kann in einer der gegebenen Sprachen gespeichert werden Enabled, with traslation Inhalt kann in einer Sprache gespeichert werden. Zusätzlich ist der Inhalt übersetzbar.
  • 17. http://new-tronic.com Inhalte übersetzen Bei bereits bestehenden Inhalten Begibt man sich zuerst in die zu übersetzende Node und wählt dort die Sprache dieser Node aus. Nach dem Speichern wählt man den Tab „Translate“ an. Unter Translate sieht man eine Übersicht der aktiven Sprachen und in welcher „Source“ Sprache eine Node gespeichert wurde. Ist noch keine Übersetzung vorhanden lässt sich diese via Klick hinzufügen. Fügt man Inhalte neu hinzu wählt man die Sprache während der Erstellung der Node aus und begibt sich dann in den Tab „Translate“ ACHTUNG: Es lassen sich nur Inhalte von NodeTypes übersetzen welche vorher konfiguriert wurden.
  • 18. Inhaltsübersicht um zu wissen welcher Inhalt in welcher Sprache verfasst wurde erweitert sich die Inhaltsliste um die Spalte „Sprache“
  • 19. Taxonomy Übersetzung
    • In der Konfiguration des Vokabulars finden sich 4 verschiedene Stati:
    • None
    • Localize terms
      • Terms und deren Beschreibung werden über das Interface übersetzt
    • Per Language terms
      • Jeder Term hat eine eigen Sprachwahl
      • Übersetzung möglich
    • Set language to vocabulary
      • Vokabular bekommt Sprache zugeteilt
      • Nur in dieser Sprache sichtbar
      • Terms gehören automatisch der durch das Vokabular bestimmten Sprache an
    http://new-tronic.com
  • 20. Localized Terms
    • Localisierte Terms werden über das „Translation Interface“ übersetzt
    • Stringsuche nach „Taxonomy“
    • Eckpunkte:
    • Einfache Übersetzung
    • Übersetzte Terms erscheinen übersetzt in der jeweiligen Sprache
    • kein eigener Pfad für übersetzte Terms möglich
    • Die Übersetzung der Terms ist über die Erweiterung „Translation Table“ sehr einfach.
    • http://drupal.org/project/translation_table
    http://new-tronic.com
  • 21. Per Language Terms
    • Einstellung der Sprache im Term
    • Eckpunkte:
    • jeder Term hat eigenen Pfad
    • Terms der verschiedenen Sprachen können miteinander verbunden werden.
  • 22. Übersetzung eines Menüs
    • Menüs lassen sich sehr einfach übersetzen
    • Beim erstellen eines Menüeintrags kann man aus den verfügbaren Sprachen wählen
    • Menüeinträge können, sind sie einer Sprache zugewiesen „localisierte“ werden.
  • 23. http://new-tronic.com Übersetzung eines Blocks
    • Beim erstellen eines Blocks kann man aus den verfügbaren Sprachen wählen
    • Die Version „All Languages“ eröffnet die Übersetzung via „Localization“
    • Wird „All Languages“ verwendet kann der Title und der Body übersetzt werden
  • 24. Wie übersetzt man Strings?
    • - Um sich mit der „on side“ Übersetzung etwas leichter zu tun gibt es den Localization Client
    • http://drupal.org/project/l10n_client
    • Wer merkt das Übersetzungen von Modulen nicht Vollständig sind kann diese entweder durch den l10n Client vornehmen oder die PO Dateien in einem Editor öffnen. http://www.poedit.net/
    • - Ein Anlaufstelle für die Deutsche Übersetzungen ist der Localization Server auf Drupal.org
    • http://localize.drupal.org/translate/languages/de
  • 25. Wenn eine Seite 2 oder mehr Sprachen hat, möchte man dem Besucher eventuell die Auswahl der Sprache abnehmen. Dazu werden die Module ip2country und ip2locale benötigt http://drupal.org/project/ip2cc http://drupal.org/project/ip2locale Ip2country ermittelt das Land des Besuchers anhand der IP Ip2locale definiert für die Länder die Standardsprache Mehrsprachigkeit – Sprache via Besucher-IP festlegen
  • 26. http://new-tronic.com Vielen Dank! Schaut in der Ruhrgebiet Gruppe vorbei: http://groups.drupal.org/ruhrgebiet Diese trifft sich am letzten Donnerstag im Monat, außer Dezember, im Unperfekthaus http://www.unperfekthaus.de In Essen Aktuell: http://drupaletics.net