Как определить язык пользователя

  • 06.06.2014

Иногда для отображения целенаправленной информации требуется определить, какой язык используется на стороне пользователя. В Jooomla для этого можно использовать метод detectLanguage() класса JLanguageHelper.

$app = JFactory::getApplication();

// Определяем язык из cookies
$langCode = $app->input->cookie->getString(JApplication::getHash('language'));

// Если cookies не установлены, используем язык обозревателя
if (!$langCode)
{
	$langCode = JLanguageHelper::detectLanguage();
}

Сначала мы проверяем, установлен ли язык в cookies (актуально для веб-сайтов, на которых активизирована многоязычность), и если не установлен, то определяем язык обозревателя. В итоге значением переменной $langCode будет язык в формате ru-RU, en-GB и т.п.

Дмитрий Рекун
Латвия , Рига , 44 года

Комментарии  

olejenya
+1 # olejenya 07.10.2017 00:04
Добрый день , а подскажите пжл , как langCode получить в мультиязычном сайте в систем плагине
в function onAfterInitialise() { } ?
Использую такой код
$langs = JFactory::getLanguage();
$language_tag = $langs->getTag(); Но почему то он выдает дефолтный англ язык ,хотя свичером я переключен на русский?Я использую аякс , поэтому мне надо функция onAfterInitialise().Есть другой вариант?

Joomla!® CMS — пожалуй, лучшая система управления контентом с открытым исходным кодом

Логотип Joomla

Joomla! — это больше, чем просто программное обеспечение, это люди, включающие разработчиков, дизайнеров, системных администраторов, переводчиков, копирайтеров, и, что самое главное — простых пользователей.

Мы рады пригласить вас в ряды нашего сообщества!

Свернуть

Коротко о главном в Joomla

Новости портала

Новое в блогах

Видео