Более 200 модулей для CS-Cart по единой подписке за 3 000 ₽ в месяц

Расширенные геолокации

Модуль определяет город по IP через локальную базу Sypex Geo или API 2ip.io и SypexGeo, поддерживает общий кэш и ручной выбор города.
Укажите домен без http и слешей. Пример: domain.com
По подписке 5 400 ₽
Написать отзыв
Последняя версия модуля Обновлено:
Есть вопросы по модулю? Напиши нам: HelpDesk Bot

Этот модуль входит в нашу Подписку.

Оформите подписку — и пользуйтесь всеми модулями без ограничений.

Расширенные геолокации

Модуль дополняет стандартную геолокацию CS-Cart, помогает точнее определять город покупателя и использовать его данные в витрине и оформлении заказа. Он полезен, когда нужно показывать актуальный город, давать выбор вручную и подстраивать checkout под выбранное местоположение.

Для чего нужен

Модуль нужен, чтобы определять город покупателя по IP через 2ip или SypexGeo, позволять выбрать город вручную, а также подставлять данные местоположения в оформление заказа. Он помогает связать геолокацию, блоки на витрине и данные checkout в одном сценарии работы.

Основные возможности

  • автоматическое определение города по IP;
  • выбор между сервисами 2ip и SypexGeo;
  • ручной выбор города на витрине и всплывающее подтверждение;
  • готовые блоки выбора города и дополнительной информации о городе;
  • подстановка города, региона и страны в checkout;
  • поддержка модулей cities и rus_cities;
  • ограничение числа запросов к сервису геолокации и защита от ботов.

Как работает

Модуль запрашивает геолокацию по IP, сохраняет выбранный город в сессии и переносит данные в поля покупателя на checkout. Если активен модуль городов, найденный город сопоставляется с записью в базе. Если сопоставление невозможно, используются данные API напрямую.

Администратор может выбрать сервис геолокации, задать API-ключ, ограничить число запросов и скрыть всплывающее окно, если оно не нужно.

Остались вопросы по работе модуля?

Напишите нам.


Продукт:
  • Store Builder
  • Store Builder Ultimate
  • Multi-Vendor
  • Multi-Vendor Plus
  • Multi-Vendor Ultimate
Назначение:
  • Владельцам
  • Покупателям
Архитектура
:
  • Backend
  • Frontend
Локализации:
  • English
  • Русский
Совместимость:
  • 4.21.X
  • 4.20.X
  • 4.19.X
  • 4.18.X

Инструкция к модулю Расширенные геолокации

Что делает модуль

Модуль определяет город покупателя по IP через 2ip или SypexGeo, позволяет выбрать город вручную и подставляет данные местоположения в оформление заказа. Если активен модуль городов, он использует его данные и может связать найденный город с записью в базе.

Где находится модуль

Настройки модуля находятся в Администрирование → Модули → Управление модулями → Расширенные геолокации.

Блоки модуля добавляются через Дизайн → Менеджер блоков: MS: Местоположение покупателя и MS: Информация о городе.

Городами управляют в стандартном разделе CS-Cart Города. Модуль добавляет дополнительные поля прямо в этот список. Отдельный раздел «MS: Расширенные геолокации. Города» искать не нужно.

Как настроить город

  1. Откройте стандартный раздел Города в панели администратора и найдите нужный город.
  2. Нажмите на стрелку в строке города, как показано на изображении ниже. Откроются дополнительные поля модуля.
  3. При необходимости заполните Дополнительный текст и Ссылку.
  4. Выберите, где показывать дополнительный текст: в уведомлении после выбора города, в отдельном блоке или в обоих местах. Для отдельного блока добавьте на витрину MS: Информация о городе.
  5. Включите Отображать город в списке выбора, если город должен быть доступен в списке выбора на витрине.
  6. Нажмите Сохранить вверху страницы.
Стандартный раздел Города: стрелка раскрывает дополнительные поля модуля для Москвы
Дополнительные поля модуля в стандартном разделе «Города». Стрелка и поля выделены красным.

Настройки

Сервис геолокации: выберите 2ip.io или SypexGeo.

Ключ API: для 2ip.io укажите токен из личного кабинета на 2ip.io. Токен нужен и для бесплатного лимита. Ключи 2ip.me не подходят. Для SypexGeo нужен ключ SypexGeo. Без ключа автоматическое определение недоступно, но город можно выбрать вручную.

Количество запросов: лимит попыток определения за 24 часа в текущей сессии, включая неудачные. Значение 0 отключает автоматическое определение. Успешный результат сохраняется в сессии и не запрашивается при каждом открытии страницы.

Скрыть всплывающее окно — отключает показ popup после определения города.

Как использовать

1. Откройте настройки модуля и выберите сервис геолокации.

2. Укажите токен выбранного сервиса и сохраните настройки.

3. При необходимости задайте лимит запросов и включите скрытие popup.

4. Добавьте блок выбора города на витрину, если нужен ручной выбор города.

5. Добавьте блок с информацией о городе, если нужно показывать дополнительный текст или ссылку.

6. В стандартном разделе Города проверьте список городов и заполните дополнительные поля, раскрыв строку нужного города стрелкой.

Как проверить работу

1. Откройте витрину в новом приватном окне и проверьте автоматическое определение города. Геолокация определяется по IP, поэтому VPN и прокси могут влиять на результат.

2. Выберите город вручную и убедитесь, что он сохраняется в сессии.

3. Проверьте, что в checkout подставляются город, регион и страна.

4. Если включено всплывающее окно, убедитесь, что оно показывается после определения города.

5. Если используются модули городов, проверьте, что выбранный город отображается в их списке и в блоках модуля.

Если город не определился

Проверьте выбранный сервис, токен и лимиты в личном кабинете провайдера. После ошибки модуль делает паузу 5 минут, после HTTP 429 (ограничение запросов) - 15 минут. Пауза не отменяет дневной лимит попыток. Ручной выбор города остаётся доступен.

Ошибки записываются в стандартный журнал CS-Cart, если включена запись HTTP/HTTPS-запросов; иначе в журнал ошибок PHP сервера. Ищите метку ms_geolocation. Токен, IP и тело ответа в эти сообщения не попадают. После изменения сервиса или токена сохраните настройки: счётчик попыток сбросится при следующем открытии витрины. Уже выбранный вручную город сохраняется.

История изменений

v1.4.2 от 2026-09-25

[!] Исправлен блок локальной базы в настройках модуля: состояние базы, дата данных, кнопка обновления и суточные счётчики теперь выводятся и на CS-Cart 4.17, где раньше блок показывал сообщение о недоступности базы.

v1.4.1 от 2026-09-18

[*] Оформление кода и служебных файлов приведено к стандарту модуля: шапки файлов, порядок подключений, документация функций, именованные константы вместо буквенных значений. Работа модуля не изменилась.

v1.4.0 от 2026-09-18

[+] Добавлены три режима определения города: только локальная база без обращений к API, смешанный режим (локальная база, при отсутствии города — через API) и только API. Новая установка работает без API, при обновлении сохраняются прежний режим, сервис и ключ.

[+] В комплект включена локальная база Sypex Geo City с данными от 2026-06-30: города определяются без интернета и без расходования ключей.

[+] В настройках появилась кнопка обновления локальной базы: загрузка по HTTPS с проверкой размера, архива и чтения данных, атомарная замена и сохранение предыдущего файла. Фоновых и автоматических обновлений нет.

[+] Добавлен общий серверный кэш: найденный город хранится 24 часа, отсутствие города — 6 часов, ошибка сервиса — 10 минут. Одновременные запросы одного посетителя объединяются, новые сессии не обнуляют суточный лимит обращений.

[+] Сервис геолокации защищён от серии ошибок: при отказе авторизации, оплаты, доступа или превышении лимита обращения к API приостанавливаются на час, повторные ошибки увеличивают паузу.

[+] В стандартные настройки журнала CS-Cart добавлены три флажка модуля: ошибки, обновления локальной базы и обращения к API. По умолчанию включены ошибки и обновления базы. Ключ, адрес с ключом, тело ответа, IP и данные покупателя в журнал не записываются.

[*] Страница настроек показывает суточные счётчики и статус локальной базы; автоматический запрос остатка по ключу SypexGeo при открытии настроек убран.

[*] Расширен фильтр служебных запросов: POST и AJAX, фоновые и платёжные запросы, изображения, prefetch и известные поисковые боты больше не запускают определение города.

[*] Ручной выбор города сохраняет приоритет, в том числе при смене IP; отключённые в справочнике города не выбираются.

[*] Уточнено поведение для IPv6: локальная база и SypexGeo работают по IPv4, для IPv6 остаётся ручной выбор города; адрес посетителя берётся из подключения и не подменяется заголовками запроса.

[!] Локальный режим не обращается к API даже при сохранённом ключе; повреждённая локальная база не запускает скрытый переход на API, а отсутствие города в справочнике магазина не вызывает лишний запрос.

[!] Исправлено заполнение почтового индекса и предупреждение в журнале при совместной работе со справочником городов CS-Cart.

[*] Ускорена загрузка списка городов: повторные обращения в рамках одной страницы переиспользуют результат, выборка активных и избранных городов ускорена.

v1.3.1 от 2026-09-11

[!] Исправлена передача страны доставки при выборе города вручную и при автоматическом определении.

[!] Исправлены поиск города, ссылки выбора города и обработка некорректных запросов. Отключённые города больше не выбираются.

[!] Устранено смешение одноимённых городов и регионов разных стран. Исправлены подсчёт результатов и работа со справочниками без дополнительных полей.

[!] Дополнительный текст города сохраняется только для выбранного языка; кэш списка городов учитывает язык витрины.

[!] Восстановлено создание и изменение городов через API на CS-Cart 4.19+. Ограничен доступ к чужому местоположению и изменению справочника.

[!] Ключ SypexGeo и ответ с геоданными больше не записываются в стандартный HTTP-журнал при определении города и проверке остатка запросов.

[*] Актуализированы служебные файлы и локализации. История версий приведена к единому порядку и оформлению; ранние изменения объединены в архивный блок.

v1.3.0 от 2026-09-11

[!] Исправлено определение города через 2ip.io с токеном сервиса, обновлены подсказки в настройках.

[*] Улучшена обработка ошибок и ограничений сервиса: неудачные попытки учитываются в лимите, повторные запросы выполняются с паузой, ошибки записываются без токена и персональных данных.

[!] Исправлены сохранение результата определения города и показ окна подтверждения. Ручной выбор города сохраняет приоритет.

[*] Окно подтверждения города использует оформление активной темы; заголовок переносится без обрезания, кнопки доступны с клавиатуры.

[*] Обновлены русская и английская инструкции: добавлены настройка 2ip.io, диагностика ошибок и управление городами через стандартный раздел CS-Cart со скриншотом.

v1.2.2 от 2026-08-26

[*] Обновлены описание и инструкция модуля, добавлены локализованные материалы и логотип.

v1.2.1 от 2026-06-30

[!] Улучшена совместимость со списками городов, где часть дополнительных полей отсутствует.

v1.2.0 от 2026-02-21

[+] Добавлен выбор сервиса геолокации между 2ip и SypexGeo.

[*] Поле API key переиспользовано для платного ключа 2ip и ключа SypexGeo.

[*] Обновлена логика определения города с учетом выбранного сервиса.

v1.1.0 (архив, 2023-2025)

[*] Условный архивный блок объединяет ранее обозначенные версии 2.x и 3.x за 2023-2025 годы. Отдельный релиз с этим номером не публиковался.

[+] Добавлены лицензирование, счётчик оставшихся запросов и API для работы с городами.

[+] Добавлено получение города из профиля покупателя или настроек местоположения по умолчанию.

[*] Добавлена совместимость с модулем городов CS-Cart 4.19+.

[-] Убрано отдельное добавление городов внутри модуля. Управление перенесено в стандартный раздел городов.

[!] Исправлены поиск города по части названия и кнопка закрытия всплывающего окна.

[*] Обновлены названия и описания блоков, логотипы. Код и текстовые материалы приведены к единому стандарту.

Обозначения:

[+] Добавлено

[-] Удалено

[*] Изменено

[!] Исправлена ошибка

Отзывы
Иван
Пользуюсь модулем пару недель - работает стабильно, без сбоев. Особенно радует скорость отклика и возможность кастомизации под свои нужды. Документация подробная, настройка не вызвала сложностей. Для интернет‑магазина с региональной привязкой то что надо!
Ирина
Простой в установке и надёжный в работе - именно так я бы описала этот модуль. За месяц эксплуатации ни одного сбоя, определение местоположения работает чётко. Поддержка оперативно отвечает на вопросы. Однозначно стоит своих денег, рекомендую всем, кому нужна геолокация на сайте.
Похожие модули