Сообщество русскоговорящих пользователей
CMS DotNetNuke
   Вы здесь:  Форум
Добро пожаловать, Гость. Чтобы воспользоваться всеми функциями форума - зарегистрируйтесь или аутентифицируйтесь.
ZoolooS Offline
#1 Оставлено : 16 мая 2007 г. 8:48:53(UTC)
ZoolooS

Статус: Старожил

Зарегистрирован: 13.04.2007(UTC)
Сообщений: 212

Проблема такая.. Есть "сайт" на английском.. Хочу сделать его копию на французском языке (нужен один сайт на двух языках), для этого делаю "Экспортировать шаблон" с взведенной галочкой "Вместе с содержимым". Шаблон нормально экспортируется. Затем иду в создание нового сайта.. указываю в выборе шаблона тот, который только что создал. заполняю остальные поля (название и тп., админа) и жму создать.. на что ДНН меня грубо посылает фразой "xxx.template не является допустимым файлом шаблона сайта." а ниже пишет кучу логов вида:
Цитата:
Validation Results
The element 'permission' has invalid child element 'userid'.
The element 'permission' has invalid child element 'userid'.
The element 'permission' has invalid child element 'userid'.
The element 'permission' has invalid child element 'userid'.
The element 'module' has invalid child element 'foldername'. List of possible elements expected: 'showtitle, definition, content, moduledefinition'.
The element 'permission' has invalid child element 'userid'.
The element 'module' has invalid child element 'foldername'. List of possible elements expected: 'showtitle, definition, content, moduledefinition'.
The element 'permission' has invalid child element 'userid'.
...



ЗЫ. Сразу хочу оговорить для чего создаю шаблон именно с данными. У меня почти все страницы содержат модуль Text/HTML и в этом модуле на каждой странице данные не просто текстом забиты, а с форматированием и тп. я бы потом просто поменял английский текст на французский не забивая заново HTML'ное форматирование и все (и ссылочки на различные версии где-нить в Header'е просто разместил бы).

ЗЫЫ. Ради интереса попробовал проделать тоже самое но с экспортированным шаблоном БЕЗ данных.. проблема никуда не делась.. та же ошибка выдается.


Вобщем если кто может помочь.. велкам.. ну или посоветуйте как можно по другому сделать один сайт на двух языках.
Реклама
Exiton Offline
#2 Оставлено : 16 мая 2007 г. 14:54:42(UTC)
Exiton

Статус: Старожил

Зарегистрирован: 31.03.2007(UTC)
Сообщений: 828
Откуда: Hell

Сказал «Спасибо»: 1 раз
Поблагодарили: 1 раз в 1 постах
Очень странно, что сайт не хочет создаваться из шаблона. Видимо, где-то окопался злобный баг. :(

Мда, многоязычность контента - это проблема. Разработчики обещают нахимичить поддержку нескольких языков одновременно, но это дело будущего.

Обычно или делают 2 подсайта, каждый на своём языке, или используют модули с поддержкой многоязычности.

Я пошёл по второму пути. Использовал модуль MLHTML от Appolo Software (бесплатный, для скачки нужна регистрация на их сайте). Пример реализации (на этом же хосте, кстати). Теперь не знаю, как быть с заголовками страниц в меню - утилита их локализации вроде бы бесплатно не распространяется. Думаю, в крайнем случаю напишу все варианты через слэш (некрасиво получится, конечно).

Других бесплатных многоязычных модулей (кроме "Bonosoft - Multi Page content" - то же самое, только более коряво:) мне не попадалось. Может, плохо искал.

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

Первый: очередная версия DNN может оказаться несовместима с ними.

Второй: непонятно как быть в случае, если потребуется функционал модуля, который не поддерживает многоязычность. Выкладывать его только на одном языке?

Третий: при появлении "ядрового" модуля с поддержкой многоязычности весь контент из модуля стороннего разработчика (при решении перейти на "ядровый" модуль) придётся переносить руками.

Так что я советую сделать 2 подсайта. Раз шаблоны работать не хотят - что поделаешь, придётся второй создавать заново врукопашную. Зато в будущем будет минимум проблем, связанных с работой сайта. А это хорошо.

А вот что плохо: каждый подсайт будет иметь собственный набор пользователей. Надеюсь, твой сайт не из тех, которые предоставляют какие-то сервисы пользователям и требуют их авторизации.

Как я писал в описании, если выбор модулей ограничен бесплатными, то DNN подходит далеко не для всех сценариев использования. Возможно, лучше попробовать подобрать другой движок. Например, SmallNuke поддерживает многоязычность, прост в настройке и использовании, и сделан нашим человеком. :)

Отредактировано пользователем 16 мая 2007 г. 15:08:58(UTC)  | Причина: Не указана

ZoolooS Offline
#3 Оставлено : 17 мая 2007 г. 3:43:38(UTC)
ZoolooS

Статус: Старожил

Зарегистрирован: 13.04.2007(UTC)
Сообщений: 212

мдя.. действительно проблема.. придется ручками переносить :)..

Другие движки.. ну я бы естественно поставил что-нить на PHP, но блин, политика фирмы.. типа: 1) нефиг плодить кучу всего (Апач ставить и т.п., я конечно понимаю, что IIS с ПХП работает, но.. нафиг-нафиг такое счастье :) ); 2) PHP никто не знает (кроме моих начальных знаний), а на ASP.Net пол конторы если что что-нить смогут поправить (проггерская контора)..

С пользователями проще.. сайт.. просто корпоративная Хоум-пага, где рассказано о партнерах, продуктах и собственно о конторе.. так, что думаю, кроме пользователей, которые будут править/добавлять контент там никого не будет.

ЗЫ. Кстати.. я немного не догоняю процедуру выкладывания докальной копии сайта на нормальный хостинг. Ну т.е. вот есть у меня сайт (хм.. 2 сайта :) ) работающий на докальном веб-серваке и доступный по локалке.. А я хочу его выложить в Инет, с реальным IP и доменным именем.

И еще.. допустим английская версия у нас уже выложена и ей прикрутили доменное имя вида www.kontora.com. На локальной машине у меня английская версия сайта откликалась по http://local.net.IP.address/, http://127.0.0.1/ и localhost (сейчас заметил, что последние два перекидывают на http://local.net.IP.address/dnn/), а французская создавалась как дочерний сайт (там галочку можно такую поставить) и откликалась на http://local.net.IP.address/fr/ (алиас такой я прописал при создании). Так вот вопрос такой. Как все это перелить на хостинг, чтоб французский вариант стал откликаться на http://real.IP.address/fr/ (ссылки на сайте делаю относительные, вроди - относительно либо корня сайта /dnn/... либо в некоторых случаях вообще относительно самой страницы, так что при переносе должно все работать.)

Ух.. наворотил описания :).. вобщем, если кто разобрался тем что я понаписал тут, прошу совета..
Exiton Offline
#4 Оставлено : 18 мая 2007 г. 17:38:45(UTC)
Exiton

Статус: Старожил

Зарегистрирован: 31.03.2007(UTC)
Сообщений: 828
Откуда: Hell

Сказал «Спасибо»: 1 раз
Поблагодарили: 1 раз в 1 постах
То есть на локальной машине ты сделал французский вариант, создав ещё одну виртуальную директорию, и указал для неё тот же путь, что и для оригинального портала? Это дело поправимое.

После перемещения БД портала на сервер, где лежит "kontora.com":

- присвой французскому варианту алиас "kontora.com/fr"
- сделай папочку "fr" в той папке, где лежат скрипты DNN
- скопируй туда файл "subhost.aspx", который лежит в "Portals\_default"
- переминуй его в "default.aspx"

В теории всё должно заработать. Рекомендую сперва проверить на локальной машине.

Отредактировано пользователем 18 мая 2007 г. 17:41:24(UTC)  | Причина: Не указана

ZoolooS Offline
#5 Оставлено : 21 мая 2007 г. 4:33:29(UTC)
ZoolooS

Статус: Старожил

Зарегистрирован: 13.04.2007(UTC)
Сообщений: 212

нет.. не так.. я в ДНН создал еще один портал (французский) (он мне его запихнул в папку wwwroot\dnn\Portals\3\, английский вариант в wwwroot\dnn\Portals\0\ лежит) и прописал ему алиас http://local.net.IP.address/fr/. Но ход мысле твоих понятен.. Вопрос только в том что меня интересует пошаговая инструкция переноса портала с локальной машины на сервер вообще.. а то я всвязи с личными проблемами последнее время туго соображаю..
ну т.е. инструкция вида:
1. Ставим ДНН на сервак (ну естественно перед этим ставим/проверяем стоит ли IIS+MSSQL+[Ajax])
2. ... (что куда копировать, где какие бэкапы делать и т.п.)
Exiton Offline
#6 Оставлено : 21 мая 2007 г. 6:56:47(UTC)
Exiton

Статус: Старожил

Зарегистрирован: 31.03.2007(UTC)
Сообщений: 828
Откуда: Hell

Сказал «Спасибо»: 1 раз
Поблагодарили: 1 раз в 1 постах
Допустим, адрес сайта в инете будет "Domain.dz". Тогда:

1. На локальном компе:
- для англоязычного сайта прописываем алиас "Domain.dz/en"
- для франкоязычного сайта прописываем алиас "Domain.dz/fr"
2. Делаем полный бэкап базы локалхостового сервера.
3. Перебрасываем все скрипты DNN из папки локалхоста на хостинг.
4. Создаём папки "en" и "fr" в той папке хостинга, где лежат скрипты DNN.
5. В эти папки ("en" и "fr") копируем файл "subhost.aspx", который лежит в "Portals\_default", и переминовываем его в "default.aspx".
6. Вносим модификации в файл "web.config" (примерно так, как это описано в руководстве по обновлению движка), изменяя адрес сервера БД, логин и пароль пользователя.
7. Разворачиваем бэкап БД на SQL-сервере хостера.

После этого всё должно начать работать. В теории... :)
ZoolooS Offline
#7 Оставлено : 21 мая 2007 г. 7:40:29(UTC)
ZoolooS

Статус: Старожил

Зарегистрирован: 13.04.2007(UTC)
Сообщений: 212

тэкс.. по пункту 3 (Перебрасываем все скрипты DNN из папки локалхоста на хостинг.), т.е. не ставим ДНН с нуля, а просто копируем папку с ним с локального компа на сервак?
и по пункту 4 (4. Создаём папки "en" и "fr" в той папке хостинга, где лежат скрипты DNN.). Т.е. просто в корень папки куда ставили ДНН? ну т.е. если ДНН у меня лежит в C:\Inetpub\wwwroot\dnn (сюда он развернут, здесь лежал папки типа Bin, Config, Portals и тп.)

И по пункту 1. Т.е. если у меня английская версия сайта типа по умолчанию, то можно ей просто прописать алиас "Domain.dz" и все, а уже французской приписать "fr"?
Exiton Offline
#8 Оставлено : 21 мая 2007 г. 8:30:59(UTC)
Exiton

Статус: Старожил

Зарегистрирован: 31.03.2007(UTC)
Сообщений: 828
Откуда: Hell

Сказал «Спасибо»: 1 раз
Поблагодарили: 1 раз в 1 постах
Цитата:
т.е. не ставим ДНН с нуля, а просто копируем папку с ним с локального компа на сервак?

Да.

Цитата:
Т.е. просто в корень папки куда ставили ДНН?

Да.

Цитата:
Т.е. если у меня английская версия сайта типа по умолчанию, то можно ей просто прописать алиас "Domain.dz" и все, а уже французской приписать "fr"?

Можно и так.
ZoolooS Offline
#9 Оставлено : 21 мая 2007 г. 9:35:17(UTC)
ZoolooS

Статус: Старожил

Зарегистрирован: 13.04.2007(UTC)
Сообщений: 212

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



 
OpenedBorderBoxed Small width layoutMedium width layoutMaximum width layout Small textMedium textMaximum text