Время работы
Пн-Пт 9.00:18:00
Сб-Вс выходной
Каталог Модули «Маркетинг, реклама» «GeoIp Api» от разработчика «Павел Шулаев»

«GeoIp Api» от разработчика «Павел Шулаев»

В наличии
Цена действительна только для интернет-магазина и может отличаться от цен в розничных магазинах
Заказать
Описание
Модуль предоставляет api для определения местоположения по ip-адресу. Если ip-адрес не указан явно, то местоположение определяется по текущему ip пользователя. Для уменьшения количества запросов, информация о последнем ip-адресе сохраняется в cookies.

В местоположение входят:
  • название города;
  • название страны на языке сайта;
  • iso-код страны
  • id страны в CMS 1С Битрикс (соответствуют id стран, возвращаемых функцией GetCountryArray)
  • название региона;
  • iso-код региона (опционально);
  • название района (опционально);
  • ширина и долгота;
  • диапазон ip-адресов (опционально).
В зависимости от выбранной службы, значения некоторых полей могут отсутствовать либо отображаться на английском языке. Для службы Sypex есть возможность указать необходимый язык 4-м параметром.

В обычном режиме решение предоставляет данные из первой службы, корректно вернувшей данные. Службы вызываются в следующем порядке:
  • sypexgeo.net (Sypex);
  • ipgeobase.ru (IpGeoBase); (отключена, т.к. перестала отвечать)
  • freegeoip.net (FreeGeoIp). (отключена, т.к. свободный api был закрыт)
В случае необходимости, можно явно указать необходимую службу. Сейчас, если указать службу, отличную от Sypex, работать не будет.


Пример использования:
use Bitrix\Main\Loader, Rover\GeoIp\Location; if (Loader::includeModule('rover.geoip')){ try{ echo 'ваш ip: ' . Location::getCurIp() . '

'; // текущий ip $location = Location::getInstance('5.255.255.88'); // yandex.ru if ($location->isSuccess()){ echo 'ip: ' . $location->getIp() . '
'; // 5.255.255.88 echo 'город: ' . $location->getCityName() . '
'; // Москва echo 'iso-код страны: ' . $location->getCountryCode() . '
'; // RU echo 'название страны: ' . $location->getCountryName() . '
'; // Россия echo 'id страны в Битриксе: ' . $location->getCountryId() . '
'; // 1 echo 'регион: ' . $location->getRegionName() . '
'; // Москва echo 'iso-код региона: ' . $location->getRegionCode() . '
'; // echo 'округ: ' . $location->getDistrict() . '
'; // Центральный федеральный округ echo 'широта: ' . $location->getLat() . '
'; // 55.755787 echo 'долгота: ' . $location->getLng() . '
'; // 37.617634 echo 'диапазон адресов: ' . $location->getInetnum() . '
'; // 5.255.252.0 - 5.255.255.255 echo 'сервис: ' . $location->getService() . '

'; // IpGeoBase } else { echo 'ошибка: ' . $location->getError() . '

'; } $location->setLanguage('en'); $location->reload('173.194.222.94'); // google.ru if ($location->isSuccess()){ echo 'ip: ' . $location->getIp() . '
'; // 173.194.222.94 echo 'город: ' . $location->getCityName() . '
'; // Mountain View echo 'iso-код страны: ' . $location->getCountryCode() . '
'; // US echo 'название страны: ' . $location->getCountryName() . '
'; // USA echo 'id страны в Битриксе: ' . $location->getCountryId() . '
'; // 122 echo 'регион: ' . $location->getRegionName() . '
'; // California echo 'iso-код региона: ' . $location->getRegionCode() . '
'; // US-CA echo 'округ: ' . $location->getDistrict() . '
'; // echo 'широта: ' . $location->getLat() . '
'; // 37.38605 echo 'долгота: ' . $location->getLng() . '
'; // -122.08385 echo 'диапазон адресов: ' . $location->getInetnum() . '
'; // echo 'сервис: ' . $location->getService() . '
'; // Sypex } else { echo 'ошибка: ' . $location->getError() . '

'; } } catch (\Exception $e) { echo $e->getMessage(); } } else echo 'Модуль GeoIp Api не установлен';


Указание сервера для Sypex
\Bitrix\Main\Config\Option::set('rover.geoip', 'sypex-server', 'ru3.sxgeo.city');
Список всех серверов https://sypexgeo.net/ru/api/


Указание ключа доступа для Sypex

\Bitrix\Main\Config\Option::set('rover.geoip', 'sypex-key', 'abcd1');


Компоненты

Указатель местоположения пользователей (rover:geoip.user.location)

Позволяет установить местоположение для пользователей на основе данных из модуля. Местоположение определяется по ip-адресу, с которого они впервые зашли на сайт.


Полное описание api на гитхабе проекта: https://github.com/pavelshulaev/geoip


Если вам нужен более расширенный функционал и более «пользовательский» интерфейс с похожим функционалом, рекомендую решение «Улучшенный выбор местоположения с определением по IP, замена контента в зависимости от города».

Характеристики
Наличие В наличии
Подходящие редакции Редакция «Старт»
Редакция «Стандарт»
Редакция «Малый Бизнес»
Редакция «Бизнес»
Разработчик Павел Шулаев
Количество установок Более 1000
Опубликовано 10.12.2016
Обновлено 06.02.2022
Адаптивность Да
Поддерживает композит Да
Отзывы о товаре
Оставляя отзыв о данном товаре, вы помогаете другим пользователям быстрее и увереннее делать свой выбор. Мы благодарим Вас за активность на нашем сайте.