Вопрос о мультиязычности разделов на сайте.

Главные вкладки

Аватар пользователя chaugi chaugi 11 сентября 2010 в 12:56

День добрый.

Как сделать так чтобы было возможно (З.Ы. Модули Locale и i18n установленны.):

1. Во Views для каждого языка указать свой Path.
Пример
en: site.com/en/news
ru: site.com/ru/novosti
Но чтобы показывался один и тотже Views. Неужели нужно делать разные Displays?!

2. В Panels при создании Panel page на каждый язык был свой URL
Пример
en: site.com/en/news_page
ru: site.com/ru/novosti_stranica
Хотелось бы не создавать дубликаты панелей...

3. Сделать для каждого языка свой pattern для генерации URL в нодах. (PathAuto, URL aliases -> Automated aliase settings) Можно сделать общий pattern, но получается так
en: site.com/en/news/article1
ru: site.com/ru/news/statja1
т.к паттер сделующий: news/[title-raw]
а нужно для каждого языка свой.

4. Если нужно сделать в меню линк на первую страницу, то создайтся 3 menu item, для каждого языка свой, а путь указывается . Пробдема в том что тэг active-trail виден только на том menu item у которого язык совпадает с default языком всего сайта. Как быть?

5. Последний комплексный вопрос. Какой подход лучше использовать чтобы добиться следующего результата: необходимо сделать что-то на подобии каталога, будь то новости с категориями или продукты, неважно. Обычно мы используем Views для отображения списка (к примеру) продуктов, с возможностью через аргумент получить Term ID (converted to term name), Taxonomy для присваивания категории которой пренадлежит продукт. Также мы используем Taxonomy menu для создания меню из терминов и используем Custom path для того чтобы эти термини вели нас в нужный Views.
Тут возникает ряд проблем:
a) Если мы хотим чтобы Taxonomy menu передвала term name но если термин переведён на русский, то URL будет иметь не транслитерацию термина а передаст его как есть, что не очен здорово, т.к. "не все броузеры одинаково полезны" и URL может выгляжеть некрасиво. А передавать только ID не очень хочется в том случае когда сайт хочет идеальный SEO. Как быть?
b) Таже ситуация, Taxonomy menu для генерации бокового меню, но зочется чтобы active-trail на главном меню был активен. Есть вариант генерировать Taxonomy menu не в отдельное меню, а тудаже в Primary links, в один из пунктов меню, а затем этот Primary links разрезать при помощи Menu Block модуля. Тогда всё здорово, за исключением того что этот фокус не проходит если термины имеют переводы на другие языки. Снова как быть?

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

Буду крайне благодарен за любые детальные комментария или советы.

Спасибо!

Комментарии

Аватар пользователя agent-000 agent-000 12 сентября 2010 в 1:45

en: site.com/en/news
ru: site.com/ru/novosti
Но чтобы показывался один и тотже Views. Неужели нужно делать разные Displays?!

--- у вас разные урлы и вы хотите одной вьюхой? да. разные страницы надо.

у вас действительно немного не правильный подход. разберитесь со структурой сайта, представьте какие будут адреса, а лучше напишите. Делать несколько язычные сайты не просто — возни больше.

Pathauto / внутри есть настройка для каждого языка. оно работает. Но лично я рекомендую использовать общие урлы, например, зачем делать news и nowosti ??? делайте news и не имейте себе проблем. есть разделение по ru и en.

К слову, во вьюхе есть еще фильтрация по текущему языку.
Удачи.

Аватар пользователя Mezolick2 Mezolick2 7 декабря 2010 в 13:00

"chaugi" wrote:
1. Во Views для каждого языка указать свой Path.
Пример
en: site.com/en/news
ru: site.com/ru/novosti
Но чтобы показывался один и тотже Views. Неужели нужно делать разные Displays?!

Обычно назначают 1 путь тпипа site.com/en/news и делают фильтрацию по текущему языку...