Посетитель из Киева с русскоязычной системой открывает beesection.com. Какой язык он должен увидеть? Ответ на этот вопрос не так очевиден, как кажется, и у нас он менялся.
Порядок
Язык первой загрузки определяется в таком порядке, и он одинаков для сайта, CRM и страниц записи:
- Явный выбор человека. Переключили язык в шапке — он запоминается в cookie на год, и никакие умолчания его не перебивают.
- Посетитель из Украины получает украинский. Независимо от языка браузера.
- Иначе — язык браузера, если он среди поддерживаемых: украинский, русский, английский.
- Иначе — язык по умолчанию, украинский.
Второй шаг стоит выше третьего не из идейных соображений. Закон о государственном языке требует, чтобы интернет-представительство бизнеса, работающего с потребителями в Украине, загружалось украинской версией по умолчанию. Раньше второго шага не было, и посетитель из Киева с русской системой получал русскую версию первой загрузкой.
Откуда мы знаем регион
Весь трафик идёт через Cloudflare, и он добавляет к каждому запросу заголовок со страной посетителя. Мы читаем его на сервере. Значения «неизвестно» и «Tor» страной не считаются: тогда работает третий шаг.
В приложении, которое загружается в браузере, спросить сервер до первого рендера поздно, поэтому там регион определяется по часовому поясу устройства: пояс «Киев» означает Украину.
Адрес тоже несёт язык
На сайте язык стоит в адресе: /uk/…, /ru/…, /en/…. Адрес без языка открывается по правилам выше, а адрес с языком открывает именно этот язык и запоминает выбор. Поэтому ссылка, которую вы пересылаете коллеге, откроется у него на том же языке, что и у вас.
Для поисковиков каждая языковая версия — отдельная страница со ссылками на две другие, поэтому Google показывает украинцу украинскую версию, а не случайную.
Почему не просто язык браузера
Язык браузера — это язык интерфейса устройства, и он часто не совпадает с языком, на котором человек хочет читать. Телефон, купленный с русским интерфейсом и ни разу не перенастроенный, есть у половины страны. Регион в этом смысле надёжнее: человек в Украине почти всегда читает на украинском, а если нет — переключит один раз, и мы запомним.
Комментарии
Комментариев пока нет. Задайте вопрос — отвечаем в течение суток.