Мультиязычный дизайн на Joomla!



Возможно, вы заметили, что на нашем сайта логотим менятеся в зависимости от выбранного языка. Так вот, я расскажу и покажу, как сделать подобное на вашем сайте.

Нам понадобится Joomla! версии не ниже 1.5.15 (скорее всего, на более ранних версиях предложенная мною методика тоже будет работать, но я пробовал только начиная с 1.5.15 и до 1.5.18)

Еще нужен JoomFish  не ниже 2.04. Кто не знает, этот компонент очень полезен при создании мультиязычного сайта на Joomla!

Итак, для начала определим текущий язык сайта. Для этого напишем всего лишь 3 строчки кода

 

1
2
3
4
5
<?php //what is current language
$currentLang =& JFactory::getDocument();
$currentLanguage = $currentLang->language;
$currentLanguage = substr($currentLanguage,0,2);
?>

 

$currentLanguage вернет нам uk, ru или en и т.п, короче говоря, последние две буквы локализации, чего вполне достаточно для идентификации языка в большинстве случаев.

 

Как это использовать? А очень просто!

 

1
<div>
<h1 class="logo_<?=$currentLanguage?>">
<a href="index.php" title=""><?php echo $tmpTools->sitename(); ?></a>
</h1>
</div>

 

Как видите, мы просто подставили нашу переменную в название класса.

А в CSS пишем примерно следующее

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
.logo-en
 
{background-image:url(/images/logo_en.png);
 
}
 
.logo-uk
 
{background-image:url(/images/logo_uk.png);
 
}
 
.logo-ru
 
{background-image:url(/images/logo_ru.png);
 
}

 

Также можно для каждого языка загружать отдельную таблицу стилей. если есть в этом необходимость

1
<link href="/css/template_<?=$currentLanguage?>.css" rel="stylesheet" type="text/css" /> 

Как видите, все очень просто.

Как говорил Иван Франко, который, кстати, владел 20 языками: "Скільки мов ти знаєш, стільки разів ти людина". Для русскоязычных читателей перевод: "Сколько языков ты знаешь, столько раз ты человек".

Как видите, все очень просто:)

Благодарность принимаю в виде:

  • "Спасибо" от чистого сердца
  • лайка / шары
  • комментария
  • Яндекс.Денег 4100162037745
  • WebMoney Z150917603458, R351335054010, E199046692457, U207019834816



Оставить комменатрий

Последние 3 комментариев(я)