Какой рейтинг вас больше интересует?
|
Многоязычный сайт на Joomla 1.7
2011-10-13 15:40:00 (читать в оригинале)
Добрый день, уважаемый читатель! В этой первой статье из нового разделаJoomla мне бы хотелосьрассказать о процессе созданиямногоязычного сайта с помощью CMSJoomla 1.7. В свое время я искал информациюпо этому вопросу на русском языке, но ксожалению не нашел. Поэтому я решилнаписать данную статью, основой длякоторой стало англоязычное руководствопо созданию многоязычного сайта на CMSJoomla 1.7, которое я немного дополнилсвоими комментариями. Итак, начнем. Для начала, следует отметить то, чтоесли в Joomla 1.5.х многоязычностьсайта обеспечивалась главным образомсторонними компонентами (напримерJoomfish), то начиная с версии1.6 Joomla предлагает подобнуюфункциональность своими силами. Joomla1.7.х продолжила развитие даннойфункции. Одним из главных улучшенийвстроенного механизма созданиямногоязычного сайта в версии 1.7.х является«ассоциация меню». На практике этовыражается в следующем: если в версии1.6 при смене языков в браузере пользователяперенаправляло с просматриваемой имстраницы текущей языковой версии надомашнюю страницу выбираемой им языковойверсии, то в версии 1.7 можно настроить«ассоциации меню» - т. е. установитьсоответствие статьи одной языковойверсии с такой же статьей другой языковойверсии. В результате этого, пользовательостанется на той же странице, которуюпросматривал, но только изменится языксодержимого.
Процесс создания многоязычного сайтана Joomla 1.7 состоит изследующих этапов: Установите требуемые языковые файлы для каждого языка, который вы хотите использовать в своем сайте.
Создайте «языки содержания». Для этого перейдите в меню «Расширения» - «Менеджер языков» («Extensions» - «Language Manager»).
В открывшейся странице перейдите на вкладку «Содержание» («Contents») и нажмите кнопку «Новый» («New»). Создайте новый «язык содержания», заполнив данные о нем в окне редактора нового языка.
После этого, добавленный Вами «языксодержания» будет доступен во всехсоответствующих меню админки Joomla1.7
Теперь создадим структуру нашего будущего многоязычного сайта. Для этого сначала создадим для каждого языка, который мы хотим использовать, корневую категорию, которую привяжем к этому языку (в окне создания категории из выпадающего списка языков выберите желаемый язык для этой категории вместо указанного там значения «Все» («All»)). При этом в названии категории желательно указать, к какому языку она относится.
Если необходимо, создайте дочерние категории для каждой корневой (родительской) категории, при этом язык дочерних категорий должен соответствовать языку родительской категории. В каждойкатегории создайте необходимое Вамколичество статей, следуя правилу «языкстатьи равен языку категории».
Когда структура сайта готова, можно приступать к созданию меню. Как и в случае со статьями\категориями, придется создавать меню для каждого «языка содержания».
При этом все пункты меню должны соответствовать тому языку, который выбран для редактируемого меню.
В каждой версии меню (для определенного языка) один из пунктов должен указывать на домашнюю страницу (для этого же языка).
Пункты меню определенной языковой версии должны отображать содержание такого же языка.
Как только мы присвоем для каждого меню домашнюю страницу, а админке мы увидим напротив меню соответствующий языку меню флажок.
В языковом менеджере на вкладке «содержание» («content») можно увидеть индикатор того, что для определенного «языка содержания» есть соответствующая ему домашняя страница. ВАЖНО: если «язык содержания» не содержит домашнюю страницу (в таблице напротив него стоит значение «Нет» («No»)), он будет недоступен посетителям вашего сайта.
Чтобы отобразить созданные нами меню, необходимо для каждого из них создать и опубликовать свой модуль, опять таки привязанный к языку («язык модуля» должен соответствовать «языку меню», которое он будет отображать).
При этом модуль, отображающий меню «по умолчанию» (которое создается автоматически при установке Joomla 1.7) необходимо снять с публикации.
Следующим шагом будет создания «стиля шаблона» для каждого «языка содержания». Это очень удобная вещь, т. к. позволяет отображать свой стиль шаблона в зависимости от языка. (например, логотип сайта может меняться в зависимости от выбранного пользователем языка, модуль может быть доступен в одной языковой версии и недоступен в другой и др.). Для создания стиля шаблона, необходимо скопировать шаблон в окне менеджера шаблонов, дать копии осознанное имя (например, связанное с языком, для которого будет использована данная копия шаблона) и настроить полученную копию (привязать ее к языку). Выполнив предыдущие шаги, нам осталось только создать модули для выбора языков и опубликовать их, чтобы пользователи могли выбирать язык сайта. Как и прежде, каждый модуль привязан к соответствующему «языку содержания».
Заключительный этап. Нам осталось только включить плагин «фильтра языков» (Language Filter plug-in) в менеджере плагинов. Если мы хотим использовать «ассоциации меню» (т. е. чтобы пользователь при смене языков оставался на той же странице, что он и просматривал, но в другой языковой версии, вместо того, чтобы его перенаправляло на домашнюю страницу выбранной им языковой версии), в плагине «фильтра языков» необходимо установить соответствующий переключатель. Кроме того, необходимо настроить для каждого желаемого пункта меню соответствующие ассоциации с аналогичными пунктами меню других языковых версий.
В заключении хочется сказать, чтофункциональность новой Joomlaпозволяет сделать вещи, для реализациикоторых раньше необходимо былоиспользовать сторонние программы. Изданного примера видно, что многоязычностьработает «из коробки», плюс к этому,если раньше чтобы показать различныйлоготип или модуль в зависимости отязыка сайта мне необходимо былоиспользовать специальные плагины, тосейчас это также можно сделать стандартнымисредствами Joomla 1.7 На этом все. До свидания!
|
Взлеты Топ 5
Падения Топ 5
|