В Drupal (начиная с версии 8 и выше, включая 10 и 11), чтобы получить код языка по умолчанию сайта (например, en, ru, fr), используйте следующий способ:
|
1 2 3 |
$default_language_code = \Drupal::languageManager() ->getDefaultLanguage() ->getId(); |
Подробности запроса:
\Drupal::languageManager()— обращение к языковому менеджеру.getDefaultLanguage()— возвращает объектLanguageInterfaceдля языка по умолчанию.getId()— возвращает языковой код (например,'en','ru').
Альтернатива через DI (Dependency Injection)
Если вы пишете сервис или контроллер, лучше использовать DI:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
use Drupal\Core\Language\LanguageManagerInterface; class MyService { protected $languageManager; public function __construct(LanguageManagerInterface $language_manager) { $this->languageManager = $language_manager; } public function getDefaultLangCode() { return $this->languageManager->getDefaultLanguage()->getId(); } } |


