Skip to content
ВозможностиТарифыПартнёрамБлогСправкаО насКонтакты
НачатьВойти
Назад к Блогу
guides2026-07-135 мин чтения

Геотаргетированные QR-меню: разные языки по IP посетителя

Как 180-местный all-inclusive отель в Анталье направляет один QR на турецкое, немецкое или русское меню через Cloudflare Workers и CF-IPCountry.

th

thMenu Team

thmenu.com

В all-inclusive отеле на 180 мест в районе Лара (Анталья) на каждом столике один и тот же QR-код — но мюнхенская семья на бранче ждёт немецкий, а пара из Петербурга на ужине ждёт русский. Один код, три опыта.

Маршрутизация по IP с CF-IPCountry

Cloudflare Workers добавляет к каждому запросу заголовок CF-IPCountry — код страны ISO 3166-1 alpha-2, выведенный из IP. Worker читает заголовок и делает 302-редирект: DE → /de, RU → /ru, TR и fallback → /tr. Решение за менее 5 мс на edge.

Таблица маппинга в KV упрощает администрирование и A/B-тесты. При наплыве голландцев летом администратор добавляет NL → /de без передеплоя.

Переопределение языка браузера: дискуссия

Accept-Language подводит в кейсе "немецкоязычный турок". Турецкая семья 20 лет живёт в Берлине с немецким браузером — в Анталье на отдыхе может предпочесть турецкий. CF-IPCountry сигнализирует местоположение, Accept-Language — предпочтение.

Рекомендация: IP первичен, язык браузера как тай-брейкер. При конфликте — крупный ручной переключатель.

Ручной переключатель как fallback

Гео-таргетинг не должен быть принудительным. thMenu показывает пилюлю с флагом и языком в шапке меню с переключением в одно касание между 12 языками. Выбор пишется в куку и приоритетен при следующих сканах.

Статистика: за три месяца 8 % из 12 400 сканов использовали ручной переключатель — это сохраняет соответствие GDPR.

FAQ

Какой язык увидит гость с VPN? CF-IPCountry разрешает выходной IP; туннель через немецкий сервер VPN покажет немецкий флаг. Ручной fallback спасает.

А если роуминг показывает иностранный IP? IP роуминга Turkcell остаются в турецких CIDR-блоках; проблем нет.

Не повредит ли SEO? Нет. Страницы меню noindex; Googlebot с IP США попадает на /tr по умолчанию.

Было полезно? Поделитесь.