GeoIp Api

Рейтинг:
Бесплатно
Работает на редакциях Битрикс:
Первый сайтСтартСтандартМалый бизнесБизнесКорпоративный порталЭнтерпрайз
Выберите подарок При покупке данного товара вам полагается один из подарков представленных ниже
Нужна помощь?
Поможем с настройкой "GeoIp Api"

Модуль предоставляет api для определения местоположения по ip-адресу. Если ip-адрес не указан явно, то местоположение определяется по текущему ip пользователя.

В местоположение входят:
  • город;
  • код страны;
  • название страны на языке сайта;
  • код страны в CMS 1С Битрикс
  • регион;
  • район;
  • ширина и долгота;
  • диапазон адресов, в который входит переданный ip.
Местоположение определяется по 2м службам: ipgeobase.ru и freegeoip.net. В случае необходимости, данные из первой уточняются данными из второй.

Для уменьшения количества запросов, полученная информация сохраняется в куках.

Пример использования:
use Bitrix\Main\Loader,     Rover\GeoIp\Location; if (Loader::includeModule('rover.geoip')){     try{         echo 'ваш ip: ' . Location::getCurIp() . '<br><br>'; // текущий ip                  $location = Location::getInstance('5.255.255.88'); // yandex.ru                  echo 'ip: '                 . $location->getIp() . '<br>';          // 5.255.255.88         echo 'город: '              . $location->getCity() . '<br>';        // Москва         echo 'код страны: '         . $location->getCountry() . '<br>';     // RU         echo 'название страны: '    . $location->getCountryName() . '<br>'; // Россия         echo 'код страны в Битриксе: '    . $location->getCountryId() . '<br>'; // 1         echo 'регион: '             . $location->getRegion() . '<br>';      // Москва         echo 'округ: '              . $location->getDistrict() . '<br>';    // Центральный федеральный округ         echo 'широта: '             . $location->getLat() . '<br>';         // 55.755787         echo 'долгота: '            . $location->getLng() . '<br>';         // 37.617634         echo 'диапазон адресов: '   . $location->getInetnum() . '<br><br>';     // 5.255.252.0 - 5.255.255.255         $location->reload('173.194.222.94'); // google.ru         echo 'ip: '                 . $location->getIp() . '<br>';          // 173.194.222.94         echo 'город: '              . $location->getCity() . '<br>';        // Mountain View         echo 'код страны: '         . $location->getCountry() . '<br>';     // US         echo 'название страны: '    . $location->getCountryName() . '<br>'; // США         echo 'код страны в Битриксе: '    . $location->getCountryId() . '<br>'; // 122         echo 'регион: '             . $location->getRegion() . '<br>';      // California         echo 'округ: '              . $location->getDistrict() . '<br>';    //         echo 'широта: '             . $location->getLat() . '<br>';         // 37.4192         echo 'долгота: '            . $location->getLng() . '<br>';         // -122.0574         echo 'диапазон адресов: '   . $location->getInetnum() . '<br>';     //     } catch (\Exception $e) {         echo $e->getMessage();     } } else     echo 'Модуль GeoIp Api не установлен';

Компоненты

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

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


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

Требования
  • php версии 5.4 или выше
  • установленная на хостинге библиотека CURL
Разработчик Павел Шулаев
Опубликовано 10.12.2016
Обновлено 06.02.2022
Версия 1.5.1
Установлено Более 1000 раз
Адаптивность Да
Поддержка Композита Да
Подходящие редакции Первый сайт, Старт, Стандарт, Малый бизнес, Бизнес, Корпоративный портал, Энтерпрайз
Бесплатно Да
Пробный период Есть