Sprachdateien

This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

  • Durch Sprachdateien ist es möglich den Inhalt einer Seite mehrsprachig zu gestalten.
    Durch Sprachdateien ist es möglich den Inhalt einer Seite mehrsprachig zu entwickeln, ohne dabei verschiedene Seiten erstellen zu müssen. Innerhalb von Sprachdateien werden Sprachvariabeln definiert, die in einem Template oder PHP Datei durch den zugehörigen Wert in der jeweils ausgewählten Sprache des Benutzers ausgegeben werden.

    Die XSD auf GitHub


    github.com/WoltLab/WCF/blob/master/XSD/language.xsd

    Package.xml


    Innerhalb der package.xml kann man der Installations- bzw. der Updateroutine durch folgenden instruction-Tag sagen, dass nun Sprachvariabeln installiert bzw. geupdatet werden soll(en).

    XML Source Code

    1. <instructions type="install">
    2. <instruction type="language" />
    3. </instructions>

    Das WSC erkennt nun alle im Ordner "language" enthaltene language PIP´s, zu der es einen entsprechenden Sprachcode gibt (z.B. de.xml für Deutsch, en.xml für Englisch etc.)

    Mögliche Parameter


    TagParameterDefinition
    languagelanguagecode="Sprachcode"
    languagename="Sprache"
    countrycode="Landescode"
    Einleitendes Elternelement
    categoryname="ea.example"Kategorie für die Sprachvariabel
    itemname="ea.example.test.first"Sprachvariabelnamen



    Aufbau einer Sprachdatei


    Innerhalb des language-Tags gibt man mittels des Parameters languagecode die Sprache an, zu der man neue Sprachvariabeln erstellen bzw. updaten möchte.

    XML Source Code: language/de.xml

    1. <?xml version="1.0" encoding="UTF-8"?>
    2. <language xmlns="http://www.woltlab.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.woltlab.com http://www.woltlab.com/XSD/2019/language.xsd" languagecode="de">
    3. <category name="ea.example">
    4. <item name="ea.example.test.first"><![CDATA[Erster Test]]></item>
    5. <item name="ea.example.test.second"><![CDATA[Zweiter Test {$foo}]]></item>
    6. </category>
    7. </language>

    Gut zu wissen


    • Zur Benennung von Sprachvariablen und Kategorien dürfen folgende Zeichen verwendet werden: "a-zA-Z0-9-".
    • Kategorien dürfen maximal aus drei Blöcken bestehen, die mit einem Punkt getrennt werden.
    • Der Name einer Sprachvariablen muss mit dem Namen der zugehörigen Kategorie beginnen z. B. "wcf.acp.global.variable"
    • Sprachdateien sollten immer im utf-8 Format abgespeichert werden
    • Templatescripting wie z.B. die Verwendung von {if} ist möglich (Ausnahme bildet hier die Kategorie wcf.global)
    • Es wird der Name der Sprachvariabel zurückgegeben, wenn man versucht eine undefinierte Sprachvariabel zu benutzen
    • Anders als alle anderen PiPs können Sprachvariabeln nicht über das Language-PiP gelöscht werden.





    Aufruf einer Sprachvariabel


    PHP Datei


    PHP Source Code

    1. //Statischer Aufruf
    2. WCF::getLanguage()->get('ea.example.test.first')
    3. // Dynamischer Aufruf
    4. WCF::getLanguage()->getDynamicVariable('ea.example.test.second', array('foo' => $this))

    Template


    Siehe: {lang}

    Ihr habt Fragen oder Anregungen? Lob oder Kritik? Lasst es mich doch durch einen Kommentar von euch wissen!

    13,094 times viewed