Перейти к содержимому

Реферальная программа Мегаплана

Партнерская программа Kredov

Как правильно реализовать мультиязычный сайт?

#1 surfer

surfer
  • Заблокированные
  • 1 956 сообщений
  • Репутация: 71
0

Отправлено 15 Сентябрь 2009 - 16:21

подскажите как правильно реализовать!

 

 

  • 0

#2 ZiTosS

ZiTosS
  • Пользователь
  • 5 148 сообщений
  • Репутация: 8

Отправлено 17 Сентябрь 2009 - 10:48

sc2r2bey,
Про сложную сказать не могу, а про простую запросто.
К примеру у нас есть папка languages, в ней папки с языками, есть таблица в БД с полями, [id, lang, path]
Например мы в админке меняем с англ на русский, тогда в проект подключаются файлы из папки с русским языком.
Например у нас в тексте встречается
echo $language['my_text'];

А в файлах с языками
rus
...
$language['my_text'] = "Мой текст";
...

eng
...
$language['my_text'] = "My text";
...

Так вот, в зависимости, какой у нас выбран язык, подключаются определенные языковые файлы, и вставка происходит в зависимости от них.
  • 0

#3 xakki

xakki
  • Пользователь
  • 27 сообщений
  • Репутация: 0

Отправлено 09 Октябрь 2009 - 11:41

лучше использовать глобальные константы define
ф отдельном фаиле языков
define('_LOK','Успешно');
define('_LERR','Ошибка');

и далее будет удобнее подставлять _LERR и '_LOK там где надо
к примеру префикс _L - будет означать то что это константа языка

так удобнее всётаки
  • 0

#4 Xap

Xap
  • Пользователь
  • 1 520 сообщений
  • Репутация: 0

Отправлено 09 Октябрь 2009 - 23:15

Если на cms то на многих есть реализация разных языков. В последнее время заметил как мне показалось удобную мультиязычность на drupal.
  • 0

#5 ZiTosS

ZiTosS
  • Пользователь
  • 5 148 сообщений
  • Репутация: 8

Отправлено 11 Октябрь 2009 - 10:09

Xap, мультиязычность на Drupal это отдельный разговор... Там присутствует возможность переводить весь контент под разные языки + есть возможность частичного перевода
  • 0

#6 link-traffic

link-traffic
  • Пользователь
  • 14 сообщений
  • Репутация: 0

Отправлено 17 Октябрь 2009 - 14:21

я обычно для этих дел юзаю обычные ini-файлы

[signup]

header="Регистрация"
username="Имя пользователя"
password="Пароль"

[login]

header="Вход в систему"
...



в php есть функция parse_ini_file которая замечательно обрабатывает ini-файлы

читаеш в начале страницы нужный файл ( например ru.lng ) а в шаблоне уже пишеш <?=$lang['signup']['header'];?>
  • 0

#7 ZiTosS

ZiTosS
  • Пользователь
  • 5 148 сообщений
  • Репутация: 8

Отправлено 18 Октябрь 2009 - 22:49

link-traffic.biz, глупо, бывает зависимость языковая более сложная. Неполный перевод, подстановка по соответствию и подобное. с ini файлами это сделать будет затруднительно. Стоит лучше разработать класс для обработки языковых возможностей.
  • 0


Оформление форума – IPBSkins.ru