Налаштування автовизначення міста користувача 1С-Бітрікс

Налаштування автовизначення міста користувача 1С-Бітрікс Бачите ситуацію: інтернет-магазин на 1С-Бітрікс показує єдині ціни для всієї України. Клієнт з Харкова бачить ціну з доставкою з Києва, хоча у нього є місцевий склад. Конверсія падає, відмови зростають. Така проблема зустрічається в кожному
Послуги, які ми пропонуємо
Показано 1 з 1Усі 1626 послуг
Налаштування автовизначення міста користувача 1С-Бітрікс
Простий
~1 день

Наші компетенції:

Часті запитання

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1455
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Розробка веб-сайту для компанії ФІКСПЕР
    1018
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Розробка на базі Бітрікс, Бітрікс24, 1С для компанії Development of an Online
    760
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    879
  • image_crm_dolbimby_434_0.webp
    Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    804
  • image_crm_technotorgcomplex_453_0.webp
    Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    1162

Налаштування автовизначення міста користувача 1С-Бітрікс

Бачите ситуацію: інтернет-магазин на 1С-Бітрікс показує єдині ціни для всієї України. Клієнт з Харкова бачить ціну з доставкою з Києва, хоча у нього є місцевий склад. Конверсія падає, відмови зростають. Така проблема зустрічається в кожному третьому мультирегіональному проєкті. Ми її вирішуємо: налаштовуємо автовизначення міста користувача з нуля. Обираємо базу GeoIP (MaxMind GeoLite2) — безкоштовно, підходить для 90% завдань, налаштовуємо модуль sale, додаємо браузерну геолокацію для точності. Досвід — 7+ років, 30+ проєктів з регіональною логікою. Гарантуємо: кожен відвідувач побачить своє місто, актуальні ціни та найближчий магазин. Сертифіковані спеціалісти 1С-Бітрікс. На одному з проєктів для мережі з 70 магазинів точність після калібрування досягла 95%. Отримайте консультацію з налаштування вже сьогодні.

GeoIP проти браузерної геолокації: що обрати?

Метод Точність Потребує дозволу Працює з VPN
GeoIP за IP ±місто, 80-90% Ні Ні (помилка)
Браузерний Geolocation API ±100 м Так (діалог користувача) Так, але VPN може обманювати

GeoIP дешевший і не потребує згоди, але браузерна геолокація точніша. Оптимально — комбінувати: спочатку IP, потім уточнювати через API.

Як реалізувати визначення міста за 5 кроків?

  1. Встановлення GeoIP-бази. Завантажте файл GeoLite2-City.mmdb з Wikipedia та розмістіть на сервері. В налаштуваннях модуля sale вкажіть шлях до файлу.

  2. Налаштування модуля sale. Увімкніть геолокацію: Магазин → Налаштування → Геолокація. Виберіть провайдера MaxMind GeoIP. Перевірте визначення через адміністративну панель. Результати автовизначення кешуються на 24 години, щоб не перевантажувати базу.

  3. Збереження міста в сесії. Після визначення запишіть місто в $_SESSION['USER_CITY']. Для авторизованих користувачів додайте кастомне поле UF_CITY в профіль. Приклад коду:

$city = \Bitrix\Sale\Location\GeoIp\Manager::getLocationByIp($ip, LANGUAGE_ID); $_SESSION['USER_CITY'] = [ 'ID' => $city['CITY_ID'], 'NAME' => $city['CITY_NAME'], 'CODE' => $city['CITY_CODE'], ]; 
  1. UI-плашка підтвердження. Покажіть модальне вікно «Ваше місто — ...?» з кнопками «Так, вірно» та «Обрати інше». Після підтвердження встановіть прапорець $_SESSION['CITY_CONFIRMED'] = true. Це знижує відмови на 20-30%.

  2. Прив'язка до цін та контенту. Створіть цінові групи для кожного міста (через b_catalog_price_type). Налаштуйте мультисайт, якщо використовуються різні домени. Або зв'яжіть розділи інфоблоку з містами через властивості.

Чому важливе підтвердження міста?

Автовизначення — це припущення, не факт. При використанні VPN або проксі помиляється в кожному п'ятому випадку. Плашка «Ваше місто — Київ?» знижує відмови на 20-30%. Показуйте її при першому відвідуванні, перевіряючи прапорець $_SESSION['CITY_CONFIRMED']. Після вибору — не показуйте. Ми даємо гарантію на коректну роботу автовизначення протягом 30 днів після запуску.

Як місто пов'язати з цінами та контентом?

Місто зв'язується з:

  • Сайтом Бітрікса (мультисайт) — різні домени для різних міст.
  • Розділами інфоблоку — ціни з властивостей з регіональними цінами.
  • Ціновими групами b_catalog_price_type — для кожного міста своя група цін.

Так ви виключаєте показ неактуальних даних. Наприклад, товар, який є лише в Києві, не покажеться в Одесі. Економія на доставці — до 15% за рахунок показу лише місцевих складів.

Що входить в налаштування?

  • Аудит поточної структури сайту та виявлення точок інтеграції.
  • Встановлення та налаштування GeoIP-бази (MaxMind Geolite2 або платна).
  • Розробка логіки визначення міста (IP + браузерна геолокація).
  • Реалізація UI-плашки підтвердження зі збереженням вибору.
  • Прив'язка цінових груп та контенту до міст.
  • Налаштування кешування результатів геолокації.
  • Тестування на реальних IP з різних регіонів.
  • Документація та консультація команди з подальшої підтримки.

JavaScript-визначення через браузер

Якщо користувач дозволив доступ до геолокації — визначте точніше через navigator.geolocation.getCurrentPosition(). Перетворіть координати на місто через reverse geocoding. Приклад:

navigator.geolocation.getCurrentPosition(async (pos) => { const resp = await fetch('/local/ajax/detect-city.php', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ lat: pos.coords.latitude, lng: pos.coords.longitude, }), }); const data = await resp.json(); if (data.city) showCityConfirmDialog(data.city); }); 

На сервері використовуйте API Яндекс.Геокодера або DaData:

// Яндекс Геокодер $url = "https://geocode-maps.yandex.ru/1.x/?apikey={$key}&format=json" . "&geocode={$lng},{$lat}&kind=locality&results=1&lang=uk_UA"; $response = json_decode(file_get_contents($url), true); $city = $response['response']['GeoObjectCollection']['featureMember'][0] ['GeoObject']['name'] ?? null; 

Терміни та вартість

Терміни налаштування — від 2 до 8 днів залежно від складності. Вартість розраховується індивідуально після аудиту вашого сайту. Зв'яжіться з нами для оцінки проєкту та отримайте консультацію щодо оптимального рішення.

Етап Час
Налаштування GeoIP-бази 1–2 год
Логіка визначення та зберігання міста 3–4 год
Браузерна геолокація + reverse geocoding 3–5 год
UI-плашка підтвердження міста 2–3 год
Прив'язка до цін / контенту 4–8 год

Налаштоване автовизначення міста — це спосіб збільшити конверсію на 20-40% для регіонів. Замовте налаштування у сертифікованих спеціалістів та отримайте готове рішення.