Zitat von
asfga
Muss ich dort mit if und elseif arbeiten (was bei vielen Sprachen unübersichtlich wird)
Ja, könntest du. Einerseits mit PHP, andererseits mit dem {{iflng}} Insert-Tag.
Zitat von
asfga
oder kann neue Übersetzungen definieren, ähnlich wie bei den Fehlermeldungen in einem Formular und gebe dann im Template lediglich den Pfad zur Übersetzung ein und je nach Sprache stellt Contao dann den richtigen Ausdruck dar?
Auch das geht. Dafür gibt es verschiedene Möglichkeiten.
Beispiel mit Contao Translations:
PHP-Code:
// contao/languages/en/default.php
$GLOBALS['TL_LANG']['MSC']['myTranslationLabel'] = 'A wonderful serenity has taken possession of my entire soul.';
PHP-Code:
// contao/languages/de/default.php
$GLOBALS['TL_LANG']['MSC']['myTranslationLabel'] = 'Eine wunderbare Heiterkeit hat meine ganze Seele eingenommen.';
PHP-Code:
<!-- templates/some_template.html5 -->
<?= $this->trans('MSC.myTranslationLabel') ?>
Beispiel mit Symfony Translations:
PHP-Code:
# translations/messages.en.yaml
my_translation_label: A wonderful serenity has taken possession of my entire soul.
PHP-Code:
# translations/messages.de.yaml
my_translation_label: Eine wunderbare Heiterkeit hat meine ganze Seele eingenommen.
PHP-Code:
<!-- templates/some_template.html5 -->
<?= $this->trans('my_translation_label', [], 'messages') ?>