Компоненты модуля

После установки появятся 4 комопнента,  которые можно найти при редактирвоании страницы сайта в редакторе справа.
  1.  bxmaker:geoip.city - «Город + popup»   выводится город (опционально) и скрытое попап окно, которое отображается  для смены города
  2. bxmaker:geoip.city.line - «Вывод названия города» - выводит город и таблички с  подтверждением (опционально)
  3. bxmaker:geoip.delivery - «Информация о доставке» - выводит о стоимость и сроки доставки товара в город пользователя
  4. bxmaker:geoip.message - «Геозависимые сообщения» -  позволяют выводить разные данные, например номер телефона, для разных городов (местоположений) или групп местоположений
 Компоненты модуля определения местоположения по IP 2.0

Компонент вывода города bxmaker:geoip.city.line

Этот компонент выводит наименование города. Помимо этого, он выводит табличку с вопросом для пользователя, верно ли определен его город. Эта табличка показывается только при первом заходе на сайт,  потом если пользователь подтвердил свой город, или указал иной, вместо таблички с вопросом, выводится вторая табличка с кнопкой для изменения города  и ссылкой на страницу с информацией о доставке, условиях и тп.

Вторая табличка появляется после наведения указателя мышки на наименование города. 

Эти таблички  и тексты задаются в параметрах вызова комопнента.

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

Всплывающее окно для смены города на страницу добавляет компонент bxmaker:geoip.city о котором написано ниже.

Вот пример вызова комопнента, дял размещения в коде страницы.

// вызов вне кэшируемой части сайта
<?php $APPLICATION->IncludeComponent( "bxmaker:geoip.city.line", 
    ".default", 
    array(
        "COMPONENT_TEMPLATE" => ".default",
        "CACHE_TYPE" => "A",
        "CACHE_TIME" => "3600",
        "CITY_LABEL" => "Ваш город:",
        "QUESTION_SHOW" => "Y",
        "QUESTION_TEXT" => "Ваш город<br/>#CITY#?",
        "INFO_SHOW" => "Y",
        "INFO_TEXT" => "<a href=\"#\" rel=\"nofollow\" target=\"_blank\">Подробнее о доставке</a>",
        "BTN_EDIT" => "Изменить город"
    ),
    false
);?>

// вызов в шаблоне другого компонента, например в шаблоне карточки товара - bitrix:catalog.element
<?php $APPLICATION->IncludeComponent( "bxmaker:geoip.city.line", 
    ".default", 
    array(
        "COMPONENT_TEMPLATE" => ".default",
        "CACHE_TYPE" => "A",
        "CACHE_TIME" => "3600",
        "CITY_LABEL" => "Ваш город:",
        "QUESTION_SHOW" => "Y",
        "QUESTION_TEXT" => "Ваш город<br/>#CITY#?",
        "INFO_SHOW" => "Y",
        "INFO_TEXT" => "<a href=\"#\" rel=\"nofollow\" target=\"_blank\">Подробнее о доставке</a>",
        "BTN_EDIT" => "Изменить город"
    ),
    $component
);?>




Вы можете указать у нужных тегов класс js-bxmaker__geoip__city-name-global , в который автоматически подставится город  и при клике по которому, ппоявится окно для смены города, на странице обязательно должен быть размещен компонент bxmaker:geoip.city (Город + popup)

Компонент  вывода информации о доставке bxmaker:geoip.delivery

Этот компонент работает только на сайтах где установлен модуль Интернет-магазин. Он выводит информацию о вариантах , стоимости и сроках  доставки в город пользователя.

При смене города пользователем, этот компонент автоматически без перезагрузки страницы подгружает новые актуальные данные. 

Пример вызова комопнента

// Для размещения  на странице, в шаблокне сайта и тд.. где нет родительского компонента

<? $APPLICATION->IncludeComponent( "bxmaker:geoip.delivery",
    ".default",
    array(
        "COMPONENT_TEMPLATE" => ".default",
        "CACHE_TYPE" => "A",
        "CACHE_TIME" => "3600",
        "COMPOSITE_FRAME_MODE" => "A",
        "COMPOSITE_FRAME_TYPE" => "AUTO",
        "PRODUCT_ID" => "8441",
        "IMG_SHOW" => "Y",
        "PROLOG" => "Способы доставки в ваш город - #CITY#",
        "EPILOG" => "Бесплатная доставка от 5000 руб."
    ),
   false
); ?>

// Для размещения в шаблоне карточки товара, в области которая является шаблоном другого компоненте, например bitrix:catalog.element

<? $APPLICATION->IncludeComponent( "bxmaker:geoip.delivery",
    ".default",
    array(
        "COMPONENT_TEMPLATE" => ".default",
        "CACHE_TYPE" => "A",
        "CACHE_TIME" => "3600",
        "COMPOSITE_FRAME_MODE" => "A",
        "COMPOSITE_FRAME_TYPE" => "AUTO",
        "PRODUCT_ID" => "8441",
        "IMG_SHOW" => "Y",
        "PROLOG" => "Способы доставки в ваш город - #CITY#",
        "EPILOG" => "Бесплатная доставка от 5000 руб."
    ),
    $component
); ?>


Компонент  bxmaker:geoip.message - Геозависимые сообщения

Этот компонент выводит произвольное сообщение конкретного типа, например это может быть изменяемый в зависимости от города номер телефона (для москвы будет выводить 8495..., а для других городов 8800..), или допустим нужен какой то рекламный текст для конкретного города

//В административном разделе тип сообщения - PHONE
//для вывода указываем тип PHONE
$APPLICATION->IncludeComponent('bxmaker:geoip.message', '', array('TYPE' => 'PHONE'));

// для вывода в шаблоне кэшируемого компонента
$APPLICATION->IncludeComponent('bxmaker:geoip.message', '', array('TYPE' => 'PHONE'), $component);


Узнайте где добавить сообщения здесь - Геозависимые сообщения

Компонент «Город + popup» - выввод города (опционально) и popup

Этот компонент обязательно надо разместить на странице.    Он формирует popup окно с вариантами предустановленных городов и поиском города. Он может как выодить город так и не выводить, в зависимости от праметров вызова компонента. 

Пример вызова компонента
// вызов вне кэшируемой части других комопнентов, в любом месте сайта
<? $APPLICATION->IncludeComponent( "bxmaker:geoip.city",
    ".default",
    array(
        "COMPONENT_TEMPLATE" => ".default",
        "CITY_SHOW" => "Y",
        "CITY_LABEL" => "Ваш город:",
        "QUESTION_SHOW" => "N",
        "QUESTION_TEXT" => "Ваш город<br/>#CITY#?",
        "INFO_SHOW" => "N",
        "INFO_TEXT" => "<a href=\"#\" rel=\"nofollow\" target=\"_blank\">Подробнее о доставке</a>",
        "BTN_EDIT" => "Изменить город",
        "SEARCH_SHOW" => "Y",
        "FAVORITE_SHOW" => "Y",
        "CITY_COUNT" => "30",
        "FID" => "12",
        "CACHE_TYPE" => "A",
        "CACHE_TIME" => "3600",
        "COMPOSITE_FRAME_MODE" => "A",
        "COMPOSITE_FRAME_TYPE" => "AUTO",
        "POPUP_LABEL" => "МЫ ДОСТАВЛЯЕМ ПО ВСЕЙ РОССИИ!",
        "INPUT_LABEL" => "Введите название города...",
        "MSG_EMPTY_RESULT" => "Ничего не найдено"
    ),
    false
); ?>

//если вызов происходитв кэшируемой части другого комопнента, обязательно третим парамтером вызова комопнента передаем ссылку на родительский комопнент 

<? $APPLICATION->IncludeComponent( "bxmaker:geoip.city",
    ".default",
    array(
        "COMPONENT_TEMPLATE" => ".default",
        "CITY_SHOW" => "Y",
        "CITY_LABEL" => "Ваш город:",
        "QUESTION_SHOW" => "N",
        "QUESTION_TEXT" => "Ваш город<br/>#CITY#?",
        "INFO_SHOW" => "N",
        "INFO_TEXT" => "<a href=\"#\" rel=\"nofollow\" target=\"_blank\">Подробнее о доставке</a>",
        "BTN_EDIT" => "Изменить город",
        "SEARCH_SHOW" => "Y",
        "FAVORITE_SHOW" => "Y",
        "CITY_COUNT" => "30",
        "FID" => "12",
        "CACHE_TYPE" => "A",
        "CACHE_TIME" => "3600",
        "COMPOSITE_FRAME_MODE" => "A",
        "COMPOSITE_FRAME_TYPE" => "AUTO",
        "POPUP_LABEL" => "МЫ ДОСТАВЛЯЕМ ПО ВСЕЙ РОССИИ!",
        "INPUT_LABEL" => "Введите название города...",
        "MSG_EMPTY_RESULT" => "Ничего не найдено"
    ),
      $component
); ?>

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