Как расширить в разы аудиторию посетителей сайта, добавив ему поддержку многоязычности и предоставить пользователям возможность выбора языка интерфейса и содержимого?
Создание мультиязычного или многоязычного сайта, как впрочем и многое другое, не так уж сложно, когда вы знаете что и как и в какой последовательности:)
Рассмотрим способ создания многоязычного сайта на следующем примере:
- установим англоязычную Joomla;
- добавим русский язык интерфейса;
- создадим двуязычную структуру меню и содержимого сайта;
1. Установите Joomla без демо-данных
инсталлируйте русский (и или требуемый) языковой пакет
в меню Extensions/Language Manager/ Install Language
выбираем "Russian"После установки выберите русский языком обоих интерфейсов - пользовательского и администраторского
2. Добавим язык содержимого (контента) сайта
меню Расширения / Менеджер языков / языки контента
Английский уже установлен как язык контента по умолчанию
{gallery}Articles/20130201,quality=100,quality_png=6,thumbs=1,caption=0,iptc=0,print=1,single=01.jpg,single_gallery=0,salign=center,download=1,thumbdetail=0,watermark=1,watermarkposition=4,watermarkimage=watermark_big.png,encrypt=2,image_info=0,css_image=0,copyright=0,resize_images=1,width_image=700,ratio_image=1,images_new=0{/gallery}
Кликните Создать
Внимание!
Тег языка состоит из 3 х частей:
- ru (язык) всегда строчными буквами
- разделитель -
- RU (код страны) всегда прописными
в данном примере ru-RU
{gallery}Articles/20130201,quality=100,quality_png=6,thumbs=1,caption=0,iptc=0,print=1,single=02.jpg,single_gallery=0,salign=center,download=1,thumbdetail=0,watermark=1,watermarkposition=4,watermarkimage=watermark_big.png,encrypt=2,image_info=0,css_image=0,copyright=0,resize_images=1,width_image=700,ratio_image=1,images_new=0{/gallery}
Сохранить
Определённые таким образом языки контента будут доступны по всему пользовательскому интерфейсу. При написании статей, пунктов меню, категорий и т.д. можно / нужно будет выбрать к какому языку относится материал.
3. По умолчанию, главной странице назначим язык "Все"
Обязательно домашней странице по умолчанию присвойте язык "Все".
Во избежание дальнейшей путаницы, переименуйте главное меню по умолчанию в Main Menu_ALL
{gallery}Articles/20130201,quality=100,quality_png=6,thumbs=1,caption=0,iptc=0,print=1,single=03.jpg,single_gallery=0,salign=center,download=1,thumbdetail=0,watermark=1,watermarkposition=4,watermarkimage=watermark_big.png,encrypt=2,image_info=0,css_image=0,copyright=0,resize_images=1,width_image=700,ratio_image=1,images_new=0{/gallery}
Пусть главное_меню_ALL содержит пункт меню произвольного типа, по умолчанию определённый как Главная страница с присвоенным статусом языка - "Все".
{gallery}Articles/20130201,quality=100,quality_png=6,thumbs=1,caption=0,iptc=0,print=1,single=04.jpg,single_gallery=0,salign=center,download=1,thumbdetail=0,watermark=1,watermarkposition=4,watermarkimage=watermark_big.png,encrypt=2,image_info=0,css_image=0,copyright=0,resize_images=1,width_image=700,ratio_image=1,images_new=0{/gallery}
В Менеджере модулей отмените публикацию модуля меню, отображающего Main Menu_ALL .
Язык этого модуля - 'Все' .
{gallery}Articles/20130201,quality=100,quality_png=6,thumbs=1,caption=0,iptc=0,print=1,single=05.jpg,single_gallery=0,salign=center,download=1,thumbdetail=0,watermark=1,watermarkposition=4,watermarkimage=watermark_big.png,encrypt=2,image_info=0,css_image=0,copyright=0,resize_images=1,width_image=700,ratio_image=1,images_new=0{/gallery}
4. Структура содержимого сайта
Чтобы избежать ошибки 404 при навигации, многоязычный сайт должен быть структурирован определенным образом.
4.1. Для каждого языка контента и языка "Все", создайте по корневой родительской категории используемых компонентов. Назначьте категориям соответствующий язык контента.
{gallery}Articles/20130201,quality=100,quality_png=6,thumbs=1,caption=0,iptc=0,print=1,single=06.jpg,single_gallery=0,salign=center,download=1,thumbdetail=0,watermark=1,watermarkposition=4,watermarkimage=watermark_big.png,encrypt=2,image_info=0,css_image=0,copyright=0,resize_images=1,width_image=700,ratio_image=1,images_new=0{/gallery}
4.2. Для каждой корневой или родительской категории создайте небходимую структуру подкатегорий, назначая подкатегориям язык категории-родителя.
Внимание! Структура категорий "Все" должна совпадать со структурами категорий для прочих языков контента.
{gallery}Articles/20130201,quality=100,quality_png=6,thumbs=1,caption=0,iptc=0,print=1,single=07.jpg,single_gallery=0,salign=center,download=1,thumbdetail=0,watermark=1,watermarkposition=4,watermarkimage=watermark_big.png,encrypt=2,image_info=0,css_image=0,copyright=0,resize_images=1,width_image=700,ratio_image=1,images_new=0{/gallery}
4.3 Создайте содержимое в этих категориях, назначая соответствующий корневой категории язык контента.
{gallery}Articles/20130201,quality=100,quality_png=6,thumbs=1,caption=0,iptc=0,print=1,single=08.jpg,single_gallery=0,salign=center,download=1,thumbdetail=0,watermark=1,watermarkposition=4,watermarkimage=watermark_big.png,encrypt=2,image_info=0,css_image=0,copyright=0,resize_images=1,width_image=700,ratio_image=1,images_new=0{/gallery}
Продолжение следует...