Здравствуй, уважаемый друг!

Кажется, ты используешь AdBlock. Этот проект развивается и существует за счет доходов от рекламы.
Добавь, пожалуйста, нас в исключения.

Спасибо за понимание.

Локализация сайта на JavaScript l20n

Автор: в категории Статьи о JavaScript 3 комментария

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

Локализация сайта при помощи l20n

Как правило, сайты с несколькими яыками — это крупные порталы или небольшие сайты-визитки, направленные на представление информации пользователям нескольких стран. Создание нескольких языковых версий для сайтов местного масштаба (городского, областного, масштаба страны) является абсолютно не обоснованной затратой средств и времени.

Сегодня мы рассмотрим один из вариантов создания мультиязычного сайта при помощи JavaScript библиотеки l20n. Данная библиотека позволяет создать мультиязычный сайт используя всего несколько файлов для локализации и собственно саму библиотеку.

Как локализовать сайт с помощью JavaScript

Для локлизации сайта с помощью JavaScript можно использовать библиотеку l20n. Структура файлов данного фреймворка достаточно проста: файл, который необходимо локализовать с подключенным файлом скрипта l20n.js и папка с локализациями. Данный фреймворк от компании Mozilla распространяется бесплатно, и вы можете с ним ознакомится по ссылке http://l20n.org/.

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

Интегрировать скрипт в вашу страничку достаточно просто:

  1. скачайте библиотеку по ссылке выше;
  2. подключите его в файле, который необходимо локализовать;
  3. разметьте соответствующим образом файл, который необходимо локализовать;
  4. создайте файлы локализации.

Вы можете скачать простой пример локализации странички при помощи фреймворка l20n от Mozilla для трех языков: английский, русский, французский. Данный пример покажет вам наглядно как работает данная библиотека. Внимание: вам необходимо запускать демо на сервере/локальном сервере — при обычном открытии файла index.html браузер выдаст ошибку: XMLHttpRequest cannot load file:///YOUR_PATH/www/locales/browser.json. Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https, chrome-extension-resource.

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

Положительные и негативные стороны локализации JavaScript

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

Однако, присутствуют и негативные стороны использования JavaScript как средства для локализации вашего сайта, такие как:

  1. По умолчанию, разработчики l20n предлагают оставлять теги для подстановки локализованных строк пустыми, что чревато понижением в поисковой выдаче, т.к. робот не видит текста на вашем сайте, т.к. поисковый робот парсит вашу страницу без JavaScript! Этот огромный недостаток можно с легкостью исправить, просто заполнив теги предпочтительным, преобладающим языком на вашем сайте, как это сделано в примере.
  2. Поисковая система не сможет проиндексировать разные версии сайта, и будет видеть только одну версию — версию, которую вы указали в предыдущем пункте. Если реализовать локализацию на php, то можно создать для поисковой системы отдельные каталоги с разными локализациями.
  3. На мой взгляд такая реализация мультиязычности не подойдет для больших порталов и крупных сайтов, т.к. она достаточно проста и не функциональна. Необходимо будет прописывать текст для каждой странички отдельно, т.е. такая конструкция позволительна исключительно для сайтов, состоящих из нескольких страниц.

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

comments powered by HyperComments

Не забудь подписаться на группы в социальных сетях, чтобы всегда быть вкурсе последних событий!

Jazzcatt
2015-12-23 16:00:28
Эта штука не работает в Опере.
Nikita Sp
2015-12-23 16:03:52
на момент работы с фреймворком все работало, сейчас не знаю - я не разработчик фреймворка
Steklorez
2016-01-26 17:21:32
Спасибо, всё просто и понятно в примере. Сделал локализацию своего мелкого сайтика. Но проблема с атрибутами, которые так не локализуешь( Видел пример с решением этой проблемы, пойду читать.
Вверх!

Меню блога

Категории блога

Облако тегов