Відображення назви мови у багатомовному сайті
21.01.2012, 22:26 | Прочитано: 27490 раз | Налаштування сайту | Автор: Денис Носов Друк | E-mail
Усі ми звикли на багатомовних сайтах до відображення мови у певному вигляді. Таких виглядів не так вже й багато і можна перелічити на пальцях однієї руки: прапорець, назва мови із прапорцем, просто назва мови, скорочена назва та у вигляді списку. Давайте розглянемо яким чином це можна реалізувати на Joomla 1.7 і Joomla 2.5.
Індикатор мови за допомогою прапорців
Щоб показати лише прапорці нам достатньо у модулі «Перемикач мови» встановити параметр «Використовувати зображення прапорів» у позицію «Так». У цьому випадку ми отримаємо лише прапорці. Для української мови у Менеджері мов (Зміст) необхідно встановити для «Префікс зображення» у вигляді "uk".
Індикатор мови за допомогою прапорців і назви
У стандартному модулі перемикання мов такої опції немає. Але це можна вирішити за допомогою зміни шаблону самого модуля. Для цього нам потрібно:
-
Створити теку
mod_languages
і перемістити в неї файлdefault.php
з/modules/mod_languages/tmpl/
. -
Створити теку
html
у своєму шаблоні, якщо вона відсутня. -
У файлі
default.php
зробити наступні зміни: Замінити код:<?php if ($params->get('image', 1)):?> <?php echo JHtml::_('image', 'mod_languages/'.$language->image.'.gif', $language->title_native, array('title'=>$language->title_native), true);?> <?php else : ?>
на:<?php if ($params->get('image', 1)):?> <?php echo JHtml::_('image', 'mod_languages/'.$language->image.'.gif', $language->title_native, array('title'=>$language->title_native), true);?> <?php echo $params->get('full_name', 1) ? $language->title_native : strtoupper($language->sef);?> <?php else : ?>
-
Зберегти файл
default.php
та разом із текоюmod_languages
перемістити до нашої новоствореної теки в шаблоні Joomlahtml
.
Таким чином разом із назвою мови ми будемо мати ще й іконку прапорця.
Індикатор мови із повною назвою мови
Для відображення повної назви мови в модулі «Перемикач мови» встановлюємо «Повні назви мов» в позицію «Так».
В Менеджері мов (Зміст) у полі «Рідна назва» вже стоїть назва мови у вигляді "Ukrainian (UA)". Цей напис ми можемо для української змінити на «Українська», а для англійської — "English" (звістно, що без лапок).
Індикатор мови із скороченою назвою мови
Аналогічно до попереднього пункту ми можемо в меню показати і скорочені назви мов. Для цього В Менеджері мов (Зміст) у полі «Рідна назва» задаємо скорочення для мови. Наприклад: для української можемо написати «Укр» або "Ua", для англыйської — "En" або "Eng".
Індикатор мови у вигляді списку
Для відображення списку мов необхідно в модулі «Перемикач мови» для «Використання випадаючого списку» виставити позицію «Так».
Зверніть увагу!
Для активації багатомовності на Joomla 1.7 або Joomla 2.5 необхідно включити системний плагін «Система. Багатомовність», модуль «Перемикач мови», завантажити необхідні мовні пакети локалізації та задати у Менеджері мов (Зміст) необхідні мови. Для контролю роботи сайту в режимі багатомовності увімкніть адміністративний модуль «Статус багатомовності».