Newsflash

Вышла в свет новая версия системы управления сайтом SmallNuke 2 (версия 2.0.1.R2). Новшество в данной версии введение 2 новых типов блоков - верхнего и нижнего. Также некоторые мелочи, которые пригодятся дизайнерам при оформлении сайтов.
 
powered_by.png, 1 kB
Home arrow Блог arrow Как сделать верхнее и нижнее меню мультиязычным?
Как сделать верхнее и нижнее меню мультиязычным? Версия в формате PDF Версия для печати Отправить на e-mail
Написал Administrator   
Friday, 12 May 2006

Есть множество сравнительно простых варианта.

1. Элементы навигации вложить в языковые файлы системы, тем самым при выборе определенного языка в навигации будут выведены именно те элементы которые предназначены только дня него.
В языковые константы можно вкладывать не только фразы, но и HTML код, с соблюдением синтаксиса PHP.

Есть множество сравнительно простых варианта.

1. Элементы навигации вложить в языковые файлы системы, тем самым при выборе определенного языка в навигации будут выведены именно те элементы которые предназначены только дня него.
В языковые константы можно вкладывать не только фразы, но и HTML код, с соблюдением синтаксиса PHP.
Пример:
В руском языковом файле для графической ссылки на главную указываем:

define("_NAV_HOME","<img border='0' src='images/home_ru.gif' width='1' height='1'>");

Для английской аудитории:

define("_NAV_HOME","<img border='0' src='images/home_en.gif' width='1' height='1'>");

После этого в соответствующем файле системы (для верхней навигации это скорее всего будет файл header.php) дописываем в массив вывода шаблона новое значение:

   $template->assign_vars(array(
        'TOPNAVHOME' => _NAV_HOME)
    );

Ну и выводим все это дело в соответствующем файле оформления

2. Можно воспользоваться системной константой определения текущей языковой версии _SNSS_LANG, и создавая условие выводить ту или иную навигацию, к примеру, в том же файле header.php для верхней навигации пишем:

    if(_SNSS_LANG == "ru") { $nav_block = "Содержание навигации для русской аудитории"; }
    else if(_SNSS_LANG == "en") { $nav_block = "Содержание навигации для англоязычной аудитории"; }

И т.д. в зависимости от количества языков в системе

3. Можно воспользоваться логикой подставления значения для графических объектов, к примеру, для графической кнопки "На главную" создаем иконки со следующими названиями:
ru_navhome.gif
en_navhome.gif и т.д.
Снова в файле header.php создаем элементы вывода в шаблоне

    $nav_home = ""._SNSS_LANG."_navhome.gif";
    $template->assign_vars(array(
        'TOPNAVHOME' => $nav_home)
    );

Т.е. название файла графики будет генерироваться автоматически в зависимости от текущей языковой версии.

Т.е. как видите вариантов множество. И к тому что я перечислил можно прибавить еще, но думаю что и этого должно хватить на все случаи жизни-)

Последнее обновление ( Friday, 24 November 2006 )
 
< Пред.
© 2009 Лучшие бесплатные cms (система управления сайтом) на php можно скачать у нас: joomla, mamba, php nuke
Joomla! is Free Software released under the GNU/GPL License.
фотографии и фото звёзды на Smachno  - свадебные поздравления в стихах на art-inform.ru  - Лучшие студенческие рефераты на портале VseReferati.ru!
CMS - это аббревиатура от Content Management System, что в дословном переводе - Система Управления контентом сайта. Иногда CMS называют "движок" сайта. Данная система предусмотрена для построения сайтов различной сложности с полным управлением контента из административной панели. Базовый вариант системы может быть дополнен различными дополнительными разделами (различные каталоги, Faq системы, системы виртуального маркетинга и т.д.). В системе CMS предусмотрена возможность использования (совместная регистрация и авторизация) одного из популярных форумов phpBB, IPB, vBulletin.  - Лучшие телевизоры жк в москве  - ноутбуки sony vaio на дом  - голые знаменитости фото  - полифония скачать
Яндекс цитирования