Выдано 110018 лицензий

Как добавить язык на сайт?

Как добавить язык на сайт?
#
Rapbi
К примеру я хочу чтобы мой сайт был не только на русском но и на английском языке как это осуществить подскажите пожалуйста?!

ПрофильЦитировать выделенное16.05.2017 06:35:04 • Сообщений: 1
Re: Как добавить язык на сайт?
#
HostCMS
Модератор
http://www.hostcms.ru/hostcms/
Многоязычность

Создать сайт с помощью HostCMS можно практически на любом языке, для этого есть три способа:

1.    На одном сайте разместить дополнительные языковые версии в отдельных подразделах, например, /en/, /de/, /cn/ и т.д.
2.    На поддоменах сайта с использованием многосайтовости разместить дополнительные языковые версии, например, en.site.ru, de.site.ru, cn.site.ru и т.д. Управление такими языковыми версиями ведется из единого центра администрирования.
3.    На различных доменах с использованием многосайтовости разместить дополнительные языковые версии, например, www.site.ru, www.site.com, www.site.de, www.site.cn и т.д. Управление такими языковыми версиями ведется из единого центра администрирования.

ПрофильЦитировать выделенное16.05.2017 08:44:22 • Сообщений: 15541
Re: Как добавить язык на сайт?
#
xelaxela13
HostCMS писал(а):
1.    На одном сайте разместить дополнительные языковые версии в отдельных подразделах, например, /en/, /de/, /cn/ и т.д.

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

ПрофильЦитировать выделенное03.07.2017 23:33:34 • Сообщений: 268
Re: Как добавить язык на сайт?
#
HostCMS
Модератор
Это просто разные разделы в структуре, создаете также, как и для обычного сайта.
Переключение рисуете в макете в нужном вам виде.

ПрофильЦитировать выделенное04.07.2017 09:22:40 • Сообщений: 15541
Re: Как добавить язык на сайт?
#
xelaxela13
Кое что получилось, но не все...
1. сайт создавать site.com и site.com/ru ?
2. как в структуре создать 2 главных?
       англ. с урлом - / (основной)
       рус. с урлом - /ru/
я создал, но по site.com/ru - чистая страница

получилось создать русский раздел Новости и вывести новость, но по урлу site.com/новости/, получается оба раздела доступны постоянно?

ПрофильЦитировать выделенное04.07.2017 11:19:53 • Сообщений: 268
Re: Как добавить язык на сайт?
#
HostCMS
Модератор
1. У вас один сайт, никаких site.com/ru
2. Откуда 2 главных, почему?! Просто разделы en, de, cn и так далее.
3. ИС новостей для каждого раздела свои.

ПрофильЦитировать выделенное04.07.2017 11:21:29 • Сообщений: 15541
Re: Как добавить язык на сайт?
#
xelaxela13
HostCMS писал(а):
2. Откуда 2 главных, почему?!

для русского своя главная страница, для инглиша своя, контент, то на разных языках и хлебные крошки должны быть разные, я создал раздел
/ru/
     /новости/

хлебные крошни получились не очень красивые, т.к Home - главная на англиском языке
Home / ru / Новости / Новость

и с меню придется повозится, получается /ru/ верхнего уровня, /новости/ подменю, выподающим списком отоброжается

ПрофильЦитировать выделенное04.07.2017 22:57:41 • Сообщений: 268
Re: Как добавить язык на сайт?
#
xelaxela13
а что на счет макетов, для каждого языка свой макет  создавать?

ПрофильЦитировать выделенное04.07.2017 23:05:04 • Сообщений: 268
Re: Как добавить язык на сайт?
#
HostCMS
Модератор
xelaxela13,
у вашего сайта будет одна главная страница и в структуре она имеет путь "/".
У каждого раздела будет просто страница этого раздела, например, страница, связанная с разделом ru

Для хлебных крошек поменяйте XSl-шаблон и если parent_id = 0, то не выводите этот пункт в крошках.

По макету сложно сказать, зависит от того, на сколько они различаются, это вам решать.

ПрофильЦитировать выделенное05.07.2017 13:07:24 • Сообщений: 15541
Re: Как добавить язык на сайт?
#
xelaxela13
Более менее получилось! Спасибо!
Еще вопрос:
Я переключаю языки в меню, в шаблоне рисую форму методом POST отправляю в ТДС меню

<form method="post" name="lang-form">
                        <input type="hidden" name="lang" value="&labelLang;"/>  
                        <input type="submit" value="&labelLang;"/>
                     </form>

где в DTD на каждый язык
<!ENTITY labelLang "en">

или
<!ENTITY labelLang "ru">

в ТДС меню
if(Core_Array::getPost('lang')){
    $lang = Core_Array::getPost('lang');
    $lang == 'ru' ? Core::setLng('ru') : Core::setLng('en');
}

ну и дальше проверяю какое меню рисовать

Теперь вопрос- язык меняется, это хорошо, но после перехода по любому урлу язык возвращается по умолчанию
как это исправить?
и как при смене языка сделать редирект на главную (средствами СМС) и остаться на нужном языке?

ПрофильЦитировать выделенное05.07.2017 19:15:40 • Сообщений: 268
Авторизация