Модераторы: Illuminaty
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Глобализация сайта. Globalization 
:(
    Опции темы
t77
Дата 30.12.2008, 11:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 459
Регистрация: 27.7.2008

Репутация: нет
Всего: нет



Уважаемые гуру, интересует, как грамотно делается глобализация сайта ?
Флажки стран в верхней части экрана и при нажатии на один из них меняется весь интерфейс сайта. Как это делается ?


PM MAIL   Вверх
NDenis
Дата 30.12.2008, 13:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 317
Регистрация: 14.12.2007

Репутация: 8
Всего: 8



Ну фактически это другой сайт, который физически может располагаться или на отдельном поддомене, или в отдельной директории на сервере. Некоторые CMS позволяют создавать многоязычные сайты.
PM MAIL   Вверх
bars80080
Дата 30.12.2008, 14:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 50
Всего: 315



или один и тот же сайт, но с продуманной системой наполнения контентом. т.е. дубликаты цельных страниц (имеется ввиду подгружаемый контент) и сменные файлы с наборами всех слов и фраз на отдельном языке (имеется ввиду пункты меню, надписи кнопок, прочие элементики). последние парсятся и загоняются в подготовленные шаблоны

примерно так:

Код

$lang = $_SESSION['lang']; // выбор языка

$words = get_dictionary($path.'/dictionary/'.$lang.'.txt');  // подгружаем словарь

$temp = get_template($path.'/template/'.$menu);  // подгружаем шаблон

$changed = array('{TITLE}', '{BUT1}');  // массив заменяемых слов
$new = array($words[5], $words[6]);  // массив на что заменить

$res = str_replace($changed, $new, $temp);  // замена

echo $res;  // вывести готовую разметку
где $temp что-то в таком духе:

Код

<html><head>
<title>{TITLE}</title>
</head>
<body>
<input type="button" value="{BUT1}" />


в общем, вперёд в изучение серверных языков
PM MAIL WWW   Вверх
t77
Дата 30.12.2008, 14:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 459
Регистрация: 27.7.2008

Репутация: нет
Всего: нет



А более модулярное решение есть?
Можно ли как-нибудь сохранять текст на нескольких языках и в зависимости от выбора пользователя всавлять необходимый.
Например в навигационом меню текст сылки - КОНТАКТЫ сохраняется как
en - CONTACTS
rus- КОНТАКТЫ
Я имею ввиду что то вроде Resex файлов в Dot.net...
Можно ли сделать что то подобное средствами JavaScript, HTML, CSS, XML, XSL ?

Добавлено через 5 минут и 53 секунды
bars80080, мы с тобой опубликовали свои ответы в разницу с минуту.
Тоесть я не видев твоего ответа, опубликовал свой.

Добавлено через 10 минут и 32 секунды
Тоесть, как я понял, без серверного языка не обойтись ?

PM MAIL   Вверх
bars80080
Дата 30.12.2008, 15:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 50
Всего: 315



не, ну можно конечно перенести логику на javascript, но прямо скажем смысла никакого, а перегруз данными очевиден. да и в части случаев не будет работать
PM MAIL WWW   Вверх
t77
Дата 30.12.2008, 23:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 459
Регистрация: 27.7.2008

Репутация: нет
Всего: нет



PHP не знаю smile 
Есть ли еще варианты как сделать глобализацию ?
или придется учить PHP...
PM MAIL   Вверх
bars80080
Дата 31.12.2008, 01:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 50
Всего: 315



можно ещё выучить asp или java или ещё что загруженней. серверные языки для того и были созданы, чтобы в том месте где приходилось делать много одинаковых страниц, можно было бы обойтись одним генерирующим скриптом

а почему бы не выучить?
PM MAIL WWW   Вверх
ksnk
Дата 31.12.2008, 11:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 48
Всего: 386



t77, Основная. imho, причина, по которой разноязыкие сайты  это фактически разные сайты - в том, что фразы и их переводы занимают разное количество букв. в некоторых случаях дизайн может конкретно "уползти". Его приходится править конкретно под язык. Соответственно, свои комплекты шаблонов, свои комплекты рисунков с надписями, свои комплекты флешек...

Добавлено через 6 минут и 11 секунд
Ну, а сделать "глобализацию" на JavaScript - просто smile
любой контент, который нуждается в "глобализации" на странице снабжается дополнительным атрибутом "lang_id". На сервере лежит xml файл с описанием этих самых lang_id и соответствующих им фраз на другом языке. при загрузке страницы одновременно вычисляется предпочитаемый язык по установленной куке. После чего для всех элементов с установленыь lang_id меняем контент...


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Вёрстка веб-сайтов | Следующая тема »


 




[ Время генерации скрипта: 0.0497 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.