Bild "misc:de.png" Bild "misc:gb.png"

i18n (für moziloCMS 1.12)

Das Plugin i18n ("Internationalization") erweitert moziloCMS um die Fähigkeit, mehrsprachige Inhalte zu verwalten. Der Website-Besucher kann zwischen den verschiedenen Sprachen auswählen.

Download


Funktion

Bild "plugin_i18n.png"
Effekt des Plugins

Inhaltsseiten

Das Plugin zeigt Inhalte in einer angegebenen Sprache nur an, wenn der Website-Besucher diese Sprache ausgewählt hat.
Beispiel für eine mehrsprachige Inhaltsseite (Sprachen rot markiert):

Oh, {i18n|de|hallo Welt!}{i18n|en|hello World!}

Hat der Benutzer "de" als Sprache ausgewählt, sieht er "Oh, hallo Welt". Bei "en" als ausgewählter Sprache wird hingegen "Oh, hello World" ausgegeben.
Der Text "Oh, " steht nicht unter der Verwaltung des Plugins und wird auf jeden Fall angezeigt.

Menüs und Website-Titel

i18n erlaubt es auch, die in Menüs und Website-Titel angezeigten Namen von Kategorien und Inhaltsseiten zu übersetzen. Das wirkt sich ausschließlich auf die Anzeige aus - an den tatsächlichen Datei- und Verzeichnisnamen im Dateisystem ändert sich nichts.

Auswahl der anzuzeigenden Sprache

Die anzuzeigende Sprache muß als Parameter "i18n" am URL übergeben werden. Beispiele:
  • http://www.example.org/?i18n=de
  • http://www.example.org/index.php?cat=Willkommen&page=Startseite&i18n=en
Die ausgewählte Sprache wird in der Browser-Session gespeichert, muß also nur einmal per URL übergeben werden. Zu einer anderen Sprache kann der Besucher wechseln, indem er die aktuelle Seite mit einem anderen Wert im i18n-Parameter des URLs aufruft (das Plugin stellt für solche Links Platzhalter zur Verfügung, siehe "Konfiguration").

Standardsprache

Wurde die Seite ohne i18n-Parameter aufgerufen und ist auch noch keine Sprache in der Browser-Session gespeichert, wird die Standardsprache angezeigt. Das ist die, die in der Konfiguration als erste steht.

Konfiguration

  • Das Plugin kann beliebig viele Sprachen verwalten. Diese müssen kommasepariert als Verfügbare Sprachen angegeben werden. Die zuerst stehende Sprache gilt als Standardsprache (s.o.).
  • Für jede angegebene Sprache wird in der Plugin-Konfiguration ein Textfeld Übersetzte Kategorie- und Seitennamen angezeigt. Darin sind alle Kategorien und Inhaltsseiten aufgelistet, zu denen man dann die passende Übersetzung angeben kann. Beispiel:
    Willkommen = Welcome
    Willkommen:Startseite = Homepage
    Willkommen:Impressum =
    Diese Übersetzungen werden - wenn die jeweilige Sprache vom Besucher ausgewählt wurde - dann anstelle der originalen Namen in Menü und/oder Website-Titel angezeigt. Bei Kategorien oder Inhaltsseiten, für die keine Übersetzung definiert wurde (hier bei "Impressum"), wird im Frontend einfach deren originaler Name ("Impressum") angezeigt.
  • Ist das Häkchen bei Kategorien und Inhaltsseiten neu einlesen gesetzt, werden beim nächsten Laden des Frontends alle Kategorien und Inhaltsseiten in alle Übersetzungs-Textfelder eingelesen. Bereits definierte Übersetzungen bleiben dabei unangetastet.
    Bei Installation des Plugins ist diese Option aktiviert; es werden also initial alle Kategorien und Inhaltsseiten eingelesen.

Verfügbare Plugin-Platzhalter

i18n stellt die folgenden Plugin-Platzhalter zur Verfügung; diese können sowohl im Template als auch in Inhaltsseiten verwendet werden:

{i18n|[Sprache]|[Inhalt]}
Beispiele:
{i18n|de|Hallo Welt}
{i18n|en|Hello World}
Inhalt, der jeweils nur angezeigt wird, wenn im Frontend die übergebene Sprache ausgewählt ist.
Der Inhalt kann natürlich moziloCMS-Syntax und andere Plugins beinhalten.
{i18n|switch_[Sprache]|[Linktext]}
Beispiele:
{i18n|switch_de|Linktext}
{i18n|switch_en|Linktext}
Erstellt einen Link auf den aktuellen URL, erweitert um den i18n-Parameter mit dem angegebenen Wert ("de" bei "switch_de"; "en" bei "switch_en" usw.).
Der generierte HTML-Code des Links sieht so aus (Beispiel für Umschalten auf "de"):
<a href="[URL]" class="i18n i18n_switch_de">[Linktext]</a>
Beispiel für Umschalten auf "en":
<a href="[URL]" class="i18n i18n_switch_en">[Linktext]</a>

Auf die Links kann also
  • generell über die CSS-Klasse "i18n"
und
  • sprachspezifisch über die CSS-Klasse "i18n_switch_[Sprache]"
zugegriffen werden.
{i18n|mainmenu}
Hauptmenü mit den übersetzten Namen von Kategorien (und, bei aktiviertem Submenü, auch Inhaltsseiten).
Ersetzt im Template den Platzhalter {MAINMENU}.
{i18n|detailmenu}
Detailmenü mit den übersetzten Namen der Inhaltsseiten.
Ersetzt im Template den Platzhalter {DETAILMENU}.
{i18n|title}
Website-Titel mit den übersetzten Namen von Kategorien und Inhaltsseiten.
Ersetzt im Template den Platzhalter {WEBSITE_TITLE}.
{i18n|sitemap}
Sitemap mit den übersetzten Namen von Kategorien und Inhaltsseiten.
{i18n|currentlang}
Gibt die aktuell gesetzte Sprache zurück, z.B."de" oder "en".

Über diese Website

Bild "Start:arvid.jpg"
Arvid Zimmermann macht was mit Computern im Ruhrpott. Mehr...

Presse

Mix2Stix wurde auf der Heft-DVD der c't-Ausgaben 14/2011 und 15/2012 ausgeliefert und im Heft vorgestellt.
Bild "Mix2Stix:ct-logo.jpg"

Die PC Praxis wählt Mix2Stix in Ausgabe 06/2008 in die "Top of the tools". Zitat: "So simpel kann gute Software sein!"
Bild "Mix2Stix:pcpraxis-logo.gif"