Leiten Sie mit einer anderen Sprache zur Startseite weiter

9

Ich habe eine Frage zum Weiterleiten zu einer Seite mit einer anderen Sprache. Ich habe diesen alten Beitrag für Drupal 7 gefunden, aber ich helfe mir nicht wirklich - https://www.drupal.org/node/1280468

Jetzt sind wir in Drupal 8 und die Umleitung funktioniert folgendermaßen:

return new RedirectResponse(\Drupal::url('<front>'))

Aber wie kann ich die Sprache für die Weiterleitung einstellen? In meinem Code habe ich den Sprachcode wie NZ für Neuseeland.

Yetispapa
quelle

Antworten:

16

Sie können diesen Code ausprobieren

 <?php

 use Drupal\Core\Url;
 use Symfony\Component\HttpFoundation\RedirectResponse;

 $language = Drupal::languageManager()->getLanguage('vi');
 $url = Url::fromRoute('<front>', [], ['language' => $language]);
 $response = new RedirectResponse($url->toString());
 $response->send();
MrD
quelle
Es funktioniert, aber Sie können 'nz' nicht übergeben, da es kein Sprachcode ist. Es wäre zum Beispiel en-au
Yetispapa
Mein schlechtes, ich überprüfe nur meine Sprache. :)
MrD
1

Innerhalb Ihrer Controller-Methode:

$url = \Drupal\Core\Url::fromRoute('<front>')->toString();
return new RedirectResponse($url);
Caligari
quelle