Webdesign - Mehrsprachigkeit in Webseiten?

2 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Ich würde alle Texte in einer Lokalisierungsdatei speichern. Eine entsprechende Ordnerstruktur könnte zum Beispiel so aussehen:

→ languages/
└ → de/messages.php
└ → en/messages.php

Die Datei message.php könnte so aussehen:

<?php

// localization file de-de
return [
 
  "send"  => "Absenden",
  "ready" => "Fertig",
  "login" => "Anmelden",  

];

Und im Frontend kannst du das ganze mittels Funktion ersetzen:

<button type="submit" name="submit>
  <?php getMessage('send'); ?>
</button>

Aus SEO-Sicht ist zu beachten, dass es nie dazu kommt, dass irgendwo Platzhalter auf der Website stehen, die nicht gefüllt werden, weil bspw. gar keine Sprache geladen wurde.

Es muss definitiv eine Fallback-Sprache definiert sein!

Vorteile:

  • Du sparst dir etliche SQL-Abfragen.
  • Die Texte sind ohne zusätzliche Bearbeitungsoberfläche per Datei änderbar.
  • Es lassen sich ohne großen Aufwand weitere Sprachen hinzufügen (diesen Schritt könnte man sogar automatisieren, in dem man alle Sprach-Verzeichnisse automatisch parsed.

Bei Fragen melde dich gerne :)

Woher ich das weiß:Studium / Ausbildung

DodgeRT 
Fragesteller
 29.04.2021, 10:57

quasi ne config-datei für die jeweilige sprache. wird entsprechend inkludiert bei der auswahl. is halt dann relativ lang wenn auch die hardcoded-texte drin stehen. dafür ises einfacher wenn in den texten bilder (oder andere html-tags)sind....

is ne gute idee... und spart mir den ganzen db-mist.

1
Niklas  29.04.2021, 10:59
@DodgeRT

Exakt. Es ist bei der initialen Einrichtung sehr aufwendig, vor allem, wenn du es mit einer älteren Software zu tun hast, wo es etliche hardcoded Strings gibt. Mit Lokalisierungsdateien zu arbeiten ist derweil zum "state of the art" geworden.

1
ntech  29.04.2021, 10:57

Genau das ist die "Best practice". Besser und sauberer geht's nicht!

1
Niklas  30.04.2021, 12:20

Danke für die Auszeichnung!

0

Moin,

du solltest bei immer wiederkehrenden Elementen wie Buttons mit einheitlichen Texten mit Sprachdateien arbeiten. Sprich du legst eine Konfigurationsdatei an am besten im INI-Format und schreibst dort mehrere Sprachversionen. Diese kannst du dann zentral ansteuern mit einer serverseitigen Programmiersprache wie Python oder PHP.

Woher ich das weiß:Berufserfahrung

DodgeRT 
Fragesteller
 15.07.2021, 09:44

jup, so hab ichs mittlerweile umgesetzt :)

0