как сделать тогда что бы половина из них была в меня русском, половина в английском сайте?
- никак. Понимаете, если вы организуете такую структуру, при которой все разделы на английском языке располагаются под разделом 12345.com/en/(например, 12345.com/en/news_eng/, 12345.com/en/about_eng/), а все разделы на русском - внутри раздела 12345.com/ru/(например, 12345.com/ru/news/, 12345.com/ru/about/), то все это делается в рамках ОДНОГО сайта на одной системе управления. Ведь домен у вас остается один и тот же - 12345.com - что для англоязычных разделов, что для русскоязычных. А указать один домен для разных сайтов в системе нельзя. Тем более нельзя для разных сайтов в системе указать в качестве их доменов подразделы одного из сайтов, например 12345.com/en/ или 12345.com/ru/. Spidertm писал(а):
раздел у меня допустим русский так и будет, а англ нужно добавить /en создаю, в структуре сайта, как мне привязать это к отдельному сайту
- повторюсь: такой возможности нет. Все это создается в структуре одного сайта. Spidertm писал(а):
что бы карта сайта была отдельная для каждого из них
- при показе карты сайта методом ShowStructure в него можно передать параметр - идентификатор родительского раздела сайта, для которого будет построено меню.
я понимаю. что то, что мне нужно организовать можно на двух системах и поддоменах, вид такой может не понравиться заказчику, весь вопрос в этом, а так самое простое решение конечно это поддомен
Да откуда вы ДВЕ системы взяли?
Повторяю еще раз - система нужна ОДНА!
И устанавливать ее тоже надо только ОДИН раз. В ту папку, которая является корневой для основного домена, например site.ru
А чтобы создать английскую версию вам нужно сделать следующее:
1. Создать поддомен en.site.ru который будет синонимом (алиасом) для site.ru и будет направлен на ту же папку, куда направлен домен site.ru
2. Создать в системе второй сайт, и указать для него доменом en.site.ru и получить для этого домена ключ.
И все, дальше система уже сама разберется, на какой домен заходит посетитель и на каком языке ему показывать сайт.
Ну а на каждом сайте вы создаете свою структуру, инфосистемы, магазины и т.п. И все.
а с пользователями как быть? многоязычность обычно не подразумевает разных пользователей сайта
получается нужно как то целиком копировать пользователей, писать регистрацию сразу во все базы...изменение данных и прочие операции...
а с пользователями как быть? многоязычность обычно не подразумевает разных пользователей сайта
- если нужны одни и те же пользователи на разных сайтах в рамках одного экземпляра системы управления, то это можно реализовать программно. Для этого нужно переделать коды настроек типовых динамически страниц "Пользователи сайта" и "Интернет-магазин корзина". В них проверку возможности пользователя быть авторизованным осуществляет метод ValidUser класса SiteUsers. Сейчас в него при вызове не передается идентификатор сайта. В этом случае в коде этого метода проверяется принадлежность пользователя, запросившего авторизацию, текущему сайту. Если у вас на сайте будут пытаться авторизоваться пользователи, принадлежащие другим сайтам на системе, то они эту проверку не пройдут. И пользователи не смогут авторизоваться. Поэтому вам нужно заменить вызов этого метода на несколько его вызовов(по числу сайтов на вашей системе, у которых пользователи будут общими), и в каждый из этих вызовов обязательно передать идентификатор очередного сайта. Чтобы какая-нибудь из проверок сработала, и пользователь авторизовался на сайте.
так что с мультиязычностью?
я так понял для русской и английской версии надо использовать домен и поддомен
site.ru
en.site.ru
создать домен на хостинге не проблема
а где описан процес подключения и обслуживания такого сайта?
как будут языки переключаться?
хотелось бы увидеть несколько примеров реализации для анализа этих примеров с точки зрения продвижения, индексации, удобства в конце концов
так что с мультиязычностью?
я так понял для русской и английской версии надо использовать домен и поддомен
site.ru
en.site.ru
создать домен на хостинге не проблема
а где описан процес подключения и обслуживания такого сайта?
как будут языки переключаться?
хотелось бы увидеть несколько примеров реализации для анализа этих примеров с точки зрения продвижения, индексации, удобства в конце концов
люди, я конечно все понимаю, но зачем такие сложности?????
разные папки, разние версии сайта, мучения с переносом с одного сайта на другой...
чем вам возможности jQuery не устроили???
делов то - вывести куда нить кнопки с выбором языка, при первичной загрузке сайта вывести модальное окно, где человек сам выберет нужный ему язык (результат тем же jQuery засовываем в кукисы для дальнейшей работы), далее рассовываем по дивам с определенными классами на ваш выбор.. по умолчанию в css эти блоки позиционируем как релатив и делаем скрытыми... затем в тело хтмл добавляем простенький скрипт того же jQuery, которыйпосмотрит есть ли переменная языка, выбранная пользователем в кукисах, и если есть - выставит соответствующим дивам display:block (по умолчанию все блоки с текстами имеют display:none)... тут главное обработку засунуть именно в $(document).ready() а не в $(document).onload(), так как второй отрабатывается после ПОЛНОЙ загрузки документа со всеми картинками, видео и прочим тяжеловесным контентом... а вот первая (ready) отрабатывается когда уже загрузится дерево DOM, а вот картинки еще даже и не начали загружаться... в итоге у нас уже есть полная структура с которой мы уже и можем работать...
а если учитывать что jQuery уже итак изначально подключен, то плагин работы с куками вообще весит копейки (около 5 кб) и оставшийся код будет весить не больше килобайта-двух...
чуть позже на тестовом сервере повешу халяву, прикручу то что писал выше и поделюсь ссылкой если кому нужно..
ну вот, на скорую руку набросал (сейчас БЕЗ кукисов, посему после перезагрузки сбрасывается на русский язык... он же стоит по умолчанию на загрузку (кукисы не прицепил))..
итак, что мы имеем?
по ссылке выводится документ имеющий следующую структуру:
<div class="ru">HostCMS v. 5 — удобная современная система управления сайтами. Управление сайтом, корректировка новостей, пресс-релизов производится с использование интуитивно-понятного интерфейса. Управлять сайтом очень просто — перейдите в центр администрирования и авторизируйтесь с использованием следующих данных: Пользователь: admin, Пароль: admin</div>
<div class="eng">HostCMS v. 5 — comfortable modern content management system. Site management, updating news, press releases produced with the use of an intuitive interface. Manage your site very simple — go to the Administration Center and authorize using the following data: User: admin, password: admin</div>
как видите у нас по разным блокам раскидан один и тот же текст, но предназначающийся для разных языковых версий сайта.. в данном случае русская версия и английская... можно хоть десяток языковых версий для сайта сделать... это текст и он много трафика не сожрет...
далее идем в макет и немного правим его... а именно сразу под открывающимся тегом body вставляю такой код (он реализует вывод кнопок переключения языков):
в итоге имеем следующее: две кнопки RU и ENG, по нажатию на которые должна меняться языковая версия сайта... (вы их можете у себя распологать где угодно и как угодно, у меня они вообще без дизайна и просто прикреплены к топу страницы.. сейчас ведь показываю только принцип)..
осталось сделать только одно - прикрутить код обрабатывающий все это:
тут все просто... при нажатии на кнопку RU мы скрываем блок с английским текстом и визуализируем блок с текстом русским.. при нажатии на ENG делаем наоборот.... ну и строкой
$(".ru").css("display","block");
задаем отображать русский блок по умолчанию...
естесственно вариант недоработанный, так как перезагрузка страницы сбрасывает видимость блока текста и делаем видимым русский, а инглиш скрывает... но я тут привел всего лишь черновой вариант без кукисов, так, что бы поняли смысл...
далее его, скрипт, можно развивать и дальше - смена текста меню в зависимости от языка и прочее прочее прочее...
кстати можно и совсем без кукисов обойтись... и оставить определение языка за браузером... пусть сам смотрит какой язык стоит у человека и на основании этого делает выбор...
то в таком случае язык будет выставляться автоматически согласно операционной системе...
но тут есть нюанс - если мы переключимся на другую языковую версию сайта, то при переходе в другой раздел или обновлении страницы - будет выставлен снова язык "по-умолчанию"... посему наиболее гибкий вариант все таки с кукисами)