2010-11-18 3 views
0

Ich arbeite an einer zweisprachigen Seite in der neuesten Version von Drupal 6. Ich habe das Internationalisierungsmodul und das Übersetzungsmodul für Ansichten installiert, neben vielen anderen.Drupal I18N - Standardsprache der View-Elemente

Das Problem: On/admin/build/translate/search, einige Elemente (z. B. der Titel der Ansicht) erscheinen in der Textgruppe "Views" und Drupal geht davon aus, dass sie auf Deutsch sind und eine englische Übersetzung benötigen.

Andere Elemente (z.B. ausgesetzt Filteretikett) erscheinen in der Textgruppe „Built-in Interface“ und Drupal übernimmt sie in Englisch, eine deutsche Übersetzung erfordern. Aber in der Tat alle Saiten sind in deutscher Sprache:

alt text

klar sein, ich bin nicht ein Problem mit der Sprache Auswahl oder die Anzeige der Ansicht zu sehen. Das Problem tritt auf, wenn die Seite zuerst vom Sprachsystem analysiert wird und alle übersetzbaren Zeichenfolgen in die Übersetzungstabelle eingefügt werden. Drupal stellt verschiedene Quellsprachen für Elemente auf derselben Seite zur Verfügung. Das Ergebnis ist eine Mischung aus Sprachen, sobald diese Zeichenfolgen übersetzt sind.

Ich dachte, dass es vielleicht die Sprache Präferenz des Benutzers ist, der zuerst die Seite schlägt, die das stört, aber sobald ich anfing, es zu ändern, stieß ich this issue (das Lesen des Threads war Augenöffnung - es sollte obligatorisch sein Lesen für jeden, der Drupal für Lösungen der Enterprise-Klasse in Betracht zieht. Ok, jetzt habe ich das URL-Präfix in der Mischung, was bedeutet, dass wenn ein Benutzer die Spracheinstellung ändert, die Site-Sprache sich nicht ändert, bis sie die URL manuell ändert. Sobald ich es geschafft habe, die Seite auf Englisch gerendert zu haben, stellte sich heraus, dass Drupal die Übersetzungszeichenfolgen nicht aufnimmt, wenn die Anzeigesprache der Ausgangssprache entspricht. Also kein Glück dort.

Ich bin bereit, meine Ansicht in 2 Sprachen zu codieren, je nachdem, was die Ausgangssprache für die verschiedene Elemente Drupal dachte, sondern auch arbeiten, das wird nicht. Hat jemand anderes das erlebt?

+0

Umm, du meinst wirklich i18n, nein? –

+0

Ja, danke. Ich habe den Titel korrigiert. – cdonner

Antwort

3

Ich denke, dass Sie wahrscheinlich grundlegenden Fehler in wie Drupal mehrsprachiges System arbeiten. Ich habe den gleichen Fehler in der ersten mehrsprachigen Drupal-Seite gemacht, die ich gebaut habe.

Das Wichtigste ist - wenn eine Ihrer Sprachen Englisch ist - Verwenden Sie Englisch in Ihrem Code. Wenn Sie das Wort "Raum" in eine der Vorlagen einfügen müssen, verwenden Sie t ("room") und nicht t ("zimmer"). Deine Ansichtstitel? Benutze Englisch. Tag-Namen und Beschreibung? Benutze Englisch. Die Hauptsprache sollte Englisch sein. Nachdem Sie Ihre englische Website eingerichtet haben, können Sie Ihre Website mit der Übersetzungsschnittstelle übersetzen. Ich weiß, dass es für jemanden seltsam klingt, dass seine Muttersprache nicht Englisch ist, aber ich habe mehrere mehrsprachige Websites mit i18n erstellt und es ist der richtige Weg, dies mit minimalen Komplikationen zu tun.

Wenn Sie die Sprache der Verwaltungsoberfläche ändern, ändern Sie nur die Schnittstelle - nicht den Wert. Wenn Sie die Benutzeroberfläche auf Deutsch umstellen (deinsite.com/de/admin/views), heißt das nicht, dass Sie sich auf "deutsche Ansichten" befinden. Es ist die gleiche Ansicht.

Es gibt einige Ausnahmen - Mehrsprachige Variable, wie ich hier erklärt: How can I set a different homepage per language in Drupal?

Ich hoffe, dass hilfreich.

+0

Ich würde nicht sagen, dass es hilfreich ist (Drupal ist schuld, nicht deins), aber es bietet eine Erklärung. Mein Plan war, mit Deutsch anzufangen und später Englisch hinzuzufügen. Während ich die Website erstellte, schien es ratsam, zu bestätigen, dass dies funktioniert.Du sagst mir, dass ich die (zunächst und wahrscheinlich immer unnötige, je nach Erfolg der deutschen Seite) englische Seite aufbauen muss, bevor ich deutsch ausrollen kann. – cdonner

+0

Aber da ich das einzige Problem (dieser Art) kenne, in das ich geriet, und ich konnte es umgehen, indem ich die exponierten Filteretiketten meiner deutschen Ansichten in Englisch definierte, drücke ich mir die Daumen. Nachdem ich die Beschriftungen ins Deutsche übersetzt hatte, funktionierten die Ansichten in beiden Sprachen korrekt. – cdonner