Регистрация
Регистрируясь, вы подтверждаете свое согласие с соглашением об использовании персональных данных.
Восстановление пароля

Многоязычная версия с одной админкой

14.04.2007, 18:49
Asiat
Аниматика
Asiat

Зарегистрирован:
2005-12-12
Сообщений: 576

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

Установил параметры в системных настройках:
$ignore_catalogue = 1;
$ignore_sub = 1;
$ignore_cc = 1;
и затем в зависимости от номеров разделов выборку из шаблона.
Вроде списки все нормально заработали.
А вот с полным выводом объекта ерунда началась.. на одном сайте ошибки, в другом - ничего не выводится.

Куда копать? Может, подход неверный, надо через s_list_class или еще как?
Кто сталкивался, подскажите.

Разработка сайтов на Netcat с 2006... хм-м ... или 2005 хммм года. В общем, обращайтесь.
14.04.2007, 19:18
Asiat
Аниматика
Asiat

Зарегистрирован:
2005-12-12
Сообщений: 576

Дополнение.
Создал тестовый шаблон попроще, так вот:
Проблемы начинаются, когда для объекта вводится Keyword, без него нормально..

Разработка сайтов на Netcat с 2006... хм-м ... или 2005 хммм года. В общем, обращайтесь.
14.04.2007, 20:51
zhilin
Жилин А.С.

Зарегистрирован:
2007-02-14
Сообщений: 108

Замечательную реализацию подсказал h/z.

1) прописать на хостинге алиас
eng.domain.ru
2) прописать этот же алиас в настройках сайта не НетКете
3) ${GLOBALS[DOMAIN_NAME]} ориентируясь по этому значению выводить англ или рус версию. Пример: ".opt_case($GLOBALS[DOMAIN_NAME]=="eng.vashdomain.ru",$f_английское_поле,$f_русское_поле)."
4) все ссылки подменять не понадобится, т.к. домен будет сам подхватываться
5) ссылка на русскую версию http://www.domain.ru/${GLOBALS[REQUEST_URI]}
ссылка на англ версию http://eng.domain.ru/${GLOBALS[REQUEST_URI]}[/quote]
14.04.2007, 21:03
zhilin
Жилин А.С.

Зарегистрирован:
2007-02-14
Сообщений: 108

Детали.
В системных полях (Разделы) создать поле NameEng - Название по-англиски для меню. Можно сделать обязательным полем.

В шаблоне навигации оформляем так:
Код:
if($GLOBALS[DOMAIN_NAME]=="eng.domen.ru"){

// забугорное меню
$browse_sub[0][active] = "<li><a href='%URL' class='subcurrent'>%NameEng</

}else{

//наше меню
$browse_sub[0][active] = "<li><a href='%URL' class='subcurrent'>%NAME</

}


Дизайн для обоих сайтов можно оформить в одном месте
Код:
".opt_case($GLOBALS[DOMAIN_NAME]=="eng.domen.ru","английский хтмл $f_EngPole","русский хтмл $f_RusPole")."


Переключалка
Код:
".opt_case($GLOBALS[DOMAIN_NAME]=="eng.domen.ru","<a href='http://domen.ru$REQUEST_URI'>Rus</a> Eng","Rus <a href='http://eng.$GLOBALS[DOMAIN_NAME]$REQUEST_URI'>Eng</a>")."
14.04.2007, 21:09
Asiat
Аниматика
Asiat

Зарегистрирован:
2005-12-12
Сообщений: 576

М-м.., если я правильно въехал, здесь получается удобно для перевода сайта. То есть когда в шаблоне создаешь одинаковые поля для разных языков.. затем выводишь нужное в зависимости от..
А как быть, если на одном из сайтов нужно будет впоследствии создать пару-тройку разделов именно для английской версии, скажем..? кажется, возникнут другие сложности.

Разработка сайтов на Netcat с 2006... хм-м ... или 2005 хммм года. В общем, обращайтесь.
14.04.2007, 21:16
zhilin
Жилин А.С.

Зарегистрирован:
2007-02-14
Сообщений: 108

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

Код:
".opt_case($GLOBALS[DOMAIN_NAME]=="eng.domen.ru","выводим меню","<!-- не выводим -->")."
14.04.2007, 21:34
Asiat
Аниматика
Asiat

Зарегистрирован:
2005-12-12
Сообщений: 576

То есть меню все же разные.
Так, а еще есть константы для модулей.
Параметр $current_catalog[Language] тоже надо переопределять в зависимости от домена..

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

Разработка сайтов на Netcat с 2006... хм-м ... или 2005 хммм года. В общем, обращайтесь.
17.04.2007, 14:29
h/z

Зарегистрирован:
2007-02-06
Сообщений: 755

если вторая версия сайта (с другим языком) не является зеркалом первого, то мне кажется и редактировать их стоит каждый по отдельности

либо добавлять дополнительные поля в шаблоны (например в какой версии сайта запись показывать/не показывать)
25.04.2007, 12:32
Гость
Гость

".opt($current_catalogue['Language']=='ru',"$f_русское_поле")."

как вариант без привязки к домену
язык прописывается в настройках сайта

198 196 2007-04-25 12:32:32 8952
Описание проекта