Mehrsprachigkeit - wahke/etstats GitHub Wiki

🌍 Mehrsprachigkeit

ETStats Web unterstützt mehrere Sprachen, aktuell Deutsch (de) und Englisch (en).


🗂️ Wo liegen die Sprachdateien?

Die Sprachdateien befinden sich im Ordner:

/lang/
├── de.php
└── en.php

Jede Datei enthält ein assoziatives Array:

return [
    'site_title' => 'ETStats Web',
    'nav_home' => 'Startseite',
    ...
];

🔄 Sprache wechseln

Standardmäßig wird die Datei de.php geladen:

$lang = include __DIR__ . '/../lang/de.php';

Wenn du die Sprache umschaltbar machen willst:

Beispiel (per URL):

$langCode = $_GET['lang'] ?? 'de';
$langFile = "../lang/" . basename($langCode) . ".php";
$lang = file_exists($langFile) ? include $langFile : include "../lang/de.php";

Dann kannst du in der Navigation Sprachlinks einfügen:

<a href="?lang=de">Deutsch</a> | <a href="?lang=en">English</a>

➕ Neue Sprache hinzufügen

  1. Kopiere eine bestehende Datei, z. B.:
cp lang/en.php lang/fr.php
  1. Übersetze alle Texte
  2. Füge Umschalter in dein Layout ein:
<a href="?lang=fr">Français</a>

🧠 Tipp

Verwende zentrale Variablen im Layout:

<title><?= htmlspecialchars($lang['site_title']) ?></title>

So kannst du mit einer Datei alle Texte leicht austauschen – ohne Templates zu ändern.


📝 Best Practices

  • Verwende kurze, sprechende Keys (nav_home, upload_logfile, etc.)
  • Vermeide HTML im Sprachtext
  • Achte auf UTF-8 ohne BOM

📖 Zurück zu Design und Theming

⚠️ **GitHub.com Fallback** ⚠️