Jooglies Goodies für Joomla und VirtueMart

Joomla Sprachvariable anlegen

Texte für Systemnachrichten, Button usw. werden in Joomla und VirtueMart durch Sprachvariablen ausgedrückt. Hier lernen Sie, wie sie die vorgegebenen Texte ersetzen können.

Zusammenfassung

  • Sprachdateien bestimmen in Joomla die Übersetzung von Texten.
  • Sprachdateien enthalten Sprachvariablen.
  • Sprachvariablen sind Zeichenketten in Großschreibung mit Unterstrichen als Trennung zwischen den einzelenen Worten.
  • Jede Komponente oder Erweiterung kann eine eigene Sprachdatei definieren.

Eine gängige Sprachvariable (man liest auch Sprach-String oder Sprachzeichenkette) sieht so aus:
COM_VIRTUEMART_INVOICE
Dieser Sprachvariable werden im Joomla-System in Sprachdateien unterschiedliche Zeichenfolgen/Texte für unterschiedliche Sprachen zugewiesen.

In der engischen Sprachdatei en-GB.com_virtuemart.ini:
COM_VIRTUEMART_INVOICE="Invoice"

In der de-DE.com_virtuemart.ini:
COM_VIRTUEMART_INVOICE="Rechnung"

Um nicht in den originalen Sprachdateien der Komponenten oder Erweiterungen arbeiten zu müssen, gibt es das Konzept der Sprach-Overrides. Die originalen Sprachdateien könnten bei einem Update überschrieben werden und die Änderungen würden verloren gehen, die Overrides bleiben bei einem Update unberührt.

Problem: Der Text gefällt mir nicht. Wo ist die Sprachvariable?

Lösung: Finden Sie die Sprachdateien!
Schauen Sie per FTP in den Ordner /language/ bzw. /administrator/language/.
Unterschiedliche Erweiterungen oder Komponenten haben unterschiedliche Namen. Zum Beispiel beginnen alle Sprachdateien der Komponete VirtueMart mit com_virtuemart... .
Wenn Sie ein Programm besitzen, das eine Volltextsuche für einen Ordner mit Textdateien durchführen kann, dann ist dies die einfachste Möglichkeit, schnell eine Sprachvariable zu finden.

Sprach-Overrides für Sprachvariablen anlegen

Sprachoverrides können auf zwei Arten angelegt werden.

  • Über die Joomla-Funktion unter Erweiterungen -> Sprachen -> Overrides.
  • Über die Override-Dateien in den Ordnern /language/overrides/ bzw. /administrator/language/overrides.

Das Anlegen über die Joomla-Funktion verhindert Fehler und ist eine gute Wahl, wenn man nur wenige Änderungen vornehmen möchte. Die Änderung über die Dateien kann von Vorteil sein, wenn man viele Sprachvariablen ändern möchte.

Sprach-Override über Joomla-Funktion anlegen

Öffnen Sie die Joomla-Sprachverwaltung unter Erweiterungen -> Sprachen -> Overrides

Auf der linken Seite im Menü ist unter Filter in der Grundeinstellung German (DE) - Site ausgewählt. Sollte das nicht der Fall sein, wählen Sie es aus. Die Seite lädt neu und es werden evtl. angelegte Overrides angezeigt.

Bei Sprach-Overrides für VirtueMart Rechnungs- und E-Mail-Layouts muss German (DE) - Administrator ausgewählt und der Haken bei für beide Bereiche gesetzt werden!

Klicken Sie nun oben auf Neu, eine neue Seite wird geladen.

Unter Sprachschlüssel geben Sie die großgeschriebenen Sprachvariable an: z. Bsp. COM_VIRTUEMART_RECHNUNG.
Dann geben Sie unter Text Ihren Wunschbegriff ein: z. Bsp. Rechnung.

Nun haben Sie erfolgreich eine Sprachvariable überschrieben oder erstellt, abhängig davon, ob die Variable zuvor in einer anderen Sprachdatei vorhanden war oder nicht.

Sprach-Override manuell über Override-Dateien anlegen

Dieser Vorgang ist im Grunde sehr einfach. Öffnen sie die Dateien mit dem gewünschten Sprachkürzel, z. Bsp. de-DE.override.ini in den Ordnern /language/overrides/ oder /administrator/language/overrides.

Die Struktur ist klar ersichtlich. Eine Zeile ist ein Override im Format SPRACHVARIABLE="Mein Text":
COM_VIRTUEMART_RECHNUNG="Rechnung"

Achten Sie darauf, dass die Struktur strikt eingehalten wird. Bei Fehlern wird die Datei nicht eingelesen und die Sprachvariablen stehen nicht zur Verfügung.
Verwenden Sie nur ASCII-Zeichen für die Sprachvariable, keine Bindestriche, nur Unterstriche. Fügen Sie keine leere Zeile ein, auch nicht am Ende der Datei.
Der Text einer Sprachvariable kann auch HTML-Code enthalten. In unseren Jooglies-Prices-Overrides nehmen wir uns das zur Hilfe, um einen Verweis auf die Lieferbedingungen unterhalb des Produktpreises zu plazieren, um dem deutschen Recht bzw. den Anforderungen einer Händlerbund-Zertifizierung gerecht zu werden.