Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
Игорь2001
17 / 17 / 10
Регистрация: 19.05.2015
Сообщений: 701
#1

Мультиязычный сайт

29.01.2018, 12:04. Просмотров 775. Ответов 1
Метки нет (Все метки)

Здравствуйте еще раз, господа форумчане!
Моя задача - сделать возможность переключаться между English и Русский на своем сайте.
Пока что идеи такие: для каждого юзера в БД (MySQL) есть поле languade (и, соответственно, таблица языков с названиями и иконками).
Текущий язык хранить в $_SESSION['language']. Ну, соответственно, если юзер не зашел, пробовать определять по айпишнику, для стран рунета - русский, для Европы, Америки, Африки и Азии - английский. Если юзер заходит - менять язык в сессии, если он меняет язык, уже войдя в сайт (с помощью переключателя, понятное дело), менять в БД.

Думаю, тут как раз все нормально, адекватно и продуманно. А дальше возникают такие вопросы:
- Перевод интерфейса. Нормально ли хранить все строчки в виде айдишников и каждый раз каждую строчку грузить из БД (таблица: строковой айди - версия на русском - версия на английском), или это слишком затратно? Какие альтернативы? (такой же механизм и для статических страниц)
- Перевод контента, созданного юзерами (а он как раз основной). Тут у меня идей совсем мало. Ну, понятно, что если нету данного текста на одном языке (юзверь не перевел), давать а другом. Но хранение всего этого добра под вопросом.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.01.2018, 12:04
Ответы с готовыми решениями:

Мультиязычный сайт на php
Решил разработать мультиязычный сайт на php. Делаю такое впервые, поэтому нужна...

Сайт после 5 секунд заходит на другой сайт (взломали сайт)
Когда я открою свое сайт он после 5 секунд заходит на другой сайт (взломали...

Покрашился сайт, Что-то накосячил, сайт не доступен
Поменял пароль в базе php.admin и теперь сайт не доступен, пишет Error...

Мультиязычный сайт
Как сделать мультиязычный сайт с помощю субдоменов? У меня есть основнои домен,...

Мультиязычный сайт!
Здравствуйте друзья! Интересную статью увидел в интернете, про создании...

1
Jodah
Эксперт PHP
2706 / 2378 / 1013
Регистрация: 01.08.2012
Сообщений: 8,405
29.01.2018, 14:46 #2
Лучший ответ Сообщение было отмечено Игорь2001 как решение

Решение

Цитата Сообщение от Игорь2001 Посмотреть сообщение
Перевод интерфейса
Можно хранить в языковых файлах. Что-нибудь вроде:

/languages/ru/interface.php
PHP
1
2
3
4
5
6
$arr['title'] = 'Заголовок главной страницы';
 
$arr['menu']['about'] = 'О нас';
$arr['menu']['contacts'] = 'Контакты';
 
return $arr;
Ну и в файле /languages/en/interface.php всё тоже самое на английском.

Вообще можете прочитать про шаблон MVCL. Языковые файлы используются, например, в Laravel и OpenCart.

Цитата Сообщение от Игорь2001 Посмотреть сообщение
Но хранение всего этого добра под вопросом.
article
id date_create
1 2018-29-01

article_desc
id article_id language_id name text
1 1 1 Название Текст статьи
2 1 2 Name Some text

Т.е. одна таблица для общей информации, вторая - для контента на разных языках.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.01.2018, 14:46

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

Создать сайт, оформленный как новостной сайт или блог
Подготовить для сайта базу данных “новости автоспорта”. Сайт должен быть...

Хочу разработать с нуля сайт, похожий на сайт знакомств. Что для этого нужно?
Хочу разработать с нуля сайт, похожий на сайт знакомств. Что для этого нужно?...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru