19. Dezember 2024
Übersetzungen im Template mit dem WordPress-Plug-in „PolyLang“
Das WordPress-Plug-in „Polylang“ ist eine gute Wahl, wenn man multilinguale Websites umsetzen möchte. Während das Plug-in dafür sorgt, dass im Backend deutsche und (z.B.) englische Inhalte eingetragen werden können, hilft folgende Funktion (in der functions.php) Inhalte in Templates komfortabel zu übersetzen.
function lang_switch($german_word, $english_word = null) {
$translations = [
'Produkte' => 'Products',
'Anwendungen' => 'Applications',
];
if (function_exists('pll_current_language')) {
$current_language = pll_current_language();
if ($current_language === 'de') {
return $german_word;
} elseif ($current_language === 'en') {
if ($english_word !== null) {
return $english_word;
}
return $translations[$german_word] ?? '';
}
}
return $german_word;
}
Code-Sprache: PHP (php)
Wenn z.B. auf einer Produktübersichtsseite das Wort „Produkte“ hard-coded im Template auftaucht, wird mit diesem Funktionsaufruf, je nach Spracheinstellung das deutsche oder englische Wort ausgegeben:
echo lang_switch('Produkte');
Code-Sprache: PHP (php)
Die Liste der zu übersetzenden Wörter kann in der functions.php gepflegt werden – so sind die Begriffe global verfügbar. Alternativ kann die Übersetzung auch direkt im Funktionsaufruf angegeben werden:
echo lang_switch('Produkte', 'Products');
Code-Sprache: PHP (php)