Вход Регистрация
СтатьиСкачатьУслугиАудиоКонтакты
ruen

Мультиязычный сайт - как сделать перевод сайта на разные языки

Обычно сайт разрабатывается для одного конкретного языка и размещается на домене в национальной зоне – ru, en, de и т.д. Однако позже возникает необходимость расширить аудиторию сайта посредством привлечения пользователей из других стран. Конечно, они могут использовать встроенные переводчики в браузере, но такой способ не совсем точен и удобен. Кроме того, пользователи попросту не найдут такой сайт в поиске, если он будет на другом языке.

Более удачный вариант – это предусмотреть мультиязычность сайта. Это позволяет предоставлять контент в удобном для каждого пользователя виде, ведь лучше всего информация воспринимается на родном языке.

multiyazychnyy-sayt-kak-sdelat-perevod

Чтобы сделать перевод сайта на разные языки, необходимо предусмотреть, какой будет использоваться способ. Условно, можно выделить три способа:

Частичный, при котором переводятся только наиболее используемые слова;

Служебный, при котором переводу подлежат только административные части системы;

Полный, который подразумевает перевод всех имеющихся данных в системе.

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

Схема перевода имеющихся строковых фраз может использоваться любая, примеры:

может использоваться предварительный сбор данных и последующих их перевод;

контент может переводиться в реальном времени используя API сторонних сервисов перевода.

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

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

Сайт может быть мультиязычным и при этом иметь одни и те же адреса страниц, то есть без дополнительной вставки кода языка в URL. При этом страницы на разных языках будут проиндексированы поисковыми системами и доступны в поиске, но это зависит от того, имеет ли поисковая система поддержку Cookie.

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

Например, в CMS Drupal есть поддержка "gettext" (библиотека проекта GNU для интернационализации), что позволяет подготавливать файлы для перевода в специальном формате (.po). Существуют целые проекты по переводу для этой системы, которые предоставляют переводы посредством удаленных запросов – это делает возможным практически автоматически использовать переводы для ядра, модулей, тем и прочих сущностей системы. Однако перевод пользовательского контента остается за администрацией конкретного сайта. Для этого могут использоваться специальные модули и возможности системы. Текст в коде следует оборачивать в функцию t, которая помещает строку в таблицу базы данных и запрашивает перевод из другой таблицы, хранящей переводы.

Комментарии (0)
Для комментирования войдите или зарегистрируйтесь.

Последние статьи

Популярные разделы

Общение

Вход в веб-версию
Приложение для Android:
Доступно в Google Play

Поделиться

Подписаться