Сегодня покажем, как работает и как настроить наш модуль «Зоны доставки (DBS-адаптер)», который позволяет использовать «Яндекс.Карты» для расчета сроков и доступности доставки в модели DBS «Яндекс.Маркет».
Зачем нужен наш модуль
На сайте можно использовать модули разметки зон доставки, которые интегрированы со стандартной формой оформления заказа, но не поддерживают обработку заказов «Яндекс.Маркет», так как выполняют расчет дистанции и получение координат пользователя в веб-браузере, который не используется при запросах «Яндекс.Маркет» к «1С-Битрикс».
Наш модуль умеет загружать зоны доставки, размеченные в сторонних модулях, и выполнять расчет сроков и доступности доставки при запросах «Яндекс.Маркет».
Обратитесь в «Техдиректор» за консультацией по установке и настройке модуля.
Как работает модуль Работа модуля с разной удаленностью от МКАД в пределах Москвы.
Расчет сроков доставки через API запускается, когда покупатель переходит к оформлению заказа на «Яндекс.Маркет»:
Покупатель вводит адрес доставки;
«Яндекс.Маркет» отправляет запрос /cart к «1С-Битрикс»;
Модуль «Яндекс.Маркет для продавцов» создает объект заказа для расчета, заполняя местоположение и координаты покупателя в свойства заказа;
Наш модуль «Зоны доставки (DBS-адаптер)» загружает зоны доставки, проверяет совпадение координат и расчет дистанции. В зависимости от условий, настроенных администратором, модуль определяет поддержку доставки по указанному адресу и соответствующие сроки доставки.
Как настроить
Приведем шаги, которые необходимо выполнить. Подробную инструкцию можно найти на вкладке «Установка».
Заполните координаты по умолчанию для местоположений, в которых размечены зоны доставки. Будут использованы, когда пользователь только выбрал регион, но не заполнил адрес;
Добавьте службу доставки «Зоны доставки (DBS-адаптер)» в административной панели 1С-Битрикс. На вкладке «Настройки» выберите свойства заказа, в которых хранятся координаты, и нажмите сохранить;
После обновления странице на вкладке «Профили» добавьте профиль, соответствующий модулю, выбранному на 1-ом шаге. Заполните условия доставки на вкладке «Настройки» для профиля доставки;
На вкладке «Ограничения» профиля доставки добавьте ограничение по местоположению, выбрав регион, в котором находятся зоны доставки. Например, Москва и Московская область для доставки в пределах ЦКАД. Расчет доставки доставки будет запущен, если выбран соответствующий регион на «Яндекс.Маркет», возможность доставки будет уточнена на основе размеченных зон доставки;
Если необходимо, добавьте соответствующий вариант доставки в настройках обработки заказов (Маркет для продавцов -> Обработка заказов из маркетплейса).
Обратитесь в «Техдиректор» за помощью, если сталкиваетесь с проблемой при настройке.
Где реально располагается шаблон раздела "Почтовые шаблоны" в админке? --------- Друзья, на одном сайте столкнулся с проблемой, что кто-то поломал шаблон создания почтовых шаблонов в админке. Там нет кнопки "Сохранить". В связи с этим возникло сразу два вопроса. 1. Где реально располагаются шаблон раздела "Почтовые шаблоны" в админке? 2. Где храняться реально созданные почтовые шаблоны (если в MySQL, то в каких таблицах? если а файлах, то где?).
Всем доброго дня. На подскажете какие права (роль) в 1С нужно поставить пользователю, чтобы он мог пользоваться выгрузкой на сайт. Под полными правами выгрузка работает, значит дело в них
Доброго времени суток, друзья! Столкнулся с настройкой 404-страницы для компонента "medsite:medsite.userview". В этом компоненте нет параметров вывода 404 страницы. Кто-нибудь сталкивался с решением этой задачи в таком компоненте? Сам код компонента:
Перестали отображаться локальные ip 1. Прописан локальный IP-адрес на сетевом интерфейсе 2. Доступ извне через NAT 3. Для доступа из вне включена защита CloudFlare 4. После добавления строки $_SERVER["REMOTE_ADDR"] = $_SERVER['HTTP_CF_CONNECTING_IP']; в файле /bitrix/php_interface/dbconn.php перестали отображаться локальные ip
Как сделать так, чтоб локальные ip начали отображаться?
Пошаговая инструкция, как работать с инфоблоками через rest api Битрикса.
1. Заполнить "Символьный код API" у нужного инфоблока. В данном примере это будет "apiNews". Поставить рядом галочку "Включен доступ через REST" Инструкция с картинками.
2. Создать класс-контроллер путём наследования стандартного контроллера Битрикса для инфоблоков и переопределить в нём два метода.
class NewsIBlockController extends \Bitrix\Iblock\Controller\DefaultElement{
protected function getDefaultPreFilters(): array
{
return [];
}
//метод определяющий какие поля разрешены для запроса через REST
public static function getAllowedList(): array
{
return ['ID', 'IBLOCK_ID', "DETAIL_TEXT", "DETAIL_PICTURE", 'NAME', "PICS_NEWS"];
}
}
Этот класс необходимо подключить в init.php любым удобным способом
3. Зарегистрировать в сервис-локаторе свой контроллер. Можно сделать в отдельном файле, который потом подключить в init.php. Подробнее о сервис-локаторах и способах регистрации тут
Стоит обратить внимание на то, как формируется имя регистрируемого сервиса - "iblock.element.здесьAPIкодИнфоблока.rest.controller".
//Перед использованием класса NewsIBlockController нужно подключить модуль iblock
\Bitrix\Main\Loader::includeModule('iblock');
$serviceName = 'iblock.element.apiNews.rest.controller';
$serviceConfig = [
'constructor' => static function () {
return new \NewsIBlockController();
},
];
$serviceLocator = \Bitrix\Main\DI\ServiceLocator::getInstance();
try {
$serviceLocator->addInstanceLazy($serviceName, $serviceConfig);
if ($serviceLocator->has('iblock.element.apiNews.rest.controller'))
{
//проверка успешной регистрации сервиса
$newsService = $serviceLocator->get('iblock.element.apiNews.rest.controller');
AddMessage2Log(print_r($newsService->getElementEntityAllowedList(), true));
}
}
catch (Exception $e) {
AddMessage2Log($serviceName ." error - " . $e->getMessage());
}
4. Создать вебхук с доступом к модулю iblock и можно делать запросы к REST. Пример запроса к инфоблоку apiNews (его ID = 4), получаем данные по элементу с ID = 8:
Путь до "iblock.Element.get" будет в настройках вебхука.
5. Это пункт актуален, если нужно настроить rest api на БУС, где нет интерфейса для создания вебхуков.Чтобы выйти из данной ситуации, нужно создать в публичной части страницу с компонентом bitrix:rest.hook. В примере ниже компонент размещен по адресу '/rest-hook/index.php'
В некоторых мануалах пишут, что это работает и с обычным прологом, но у меня при подключении "prolog_before.php" вебхук не сохранялся - при нажатии "Сохранить" просто перезагружалась страница. При подключении "prolog_admin.php" всё работает норм. Также плюс в том, что доступ к странице автоматически закрыт от тех, кто не имеет доступа в админку.
Важный момент по ЧПУ: После создания страницы нужно её пересохранить в html режиме, чтобы перезаписались настройки ЧПУ. Именно страницу, а не компонент, так как при сохранении компонента, по неизвестной причине, раздел параметров "SEF_URL_TEMPLATES" превращается в кашу и компонент перестаёт работать. Может это какой-то прикол именно моего сайта) Также можно обновить настройки ЧПУ вручную через админку в разделе "Обработка адресов". В файле urlrewrite.php должно появиться примерно следующее:
После вышеперечисленных манипуляций по адресу /rest-hook/ap/0/ будет доступна форма создания входящего вебхука.
6. Чтобы добавить к штатному REST свои методы, нужно подписаться на событие OnRestServiceBuildDescriptionи в обработчике указать параметры нового маршрута. Подробнее тут
В качестве обработчика используем класс-контроллер NewsIBlockController,уже созданный ранее. Например, добавим возможность создавать элементы инфоблока через REST - для этого создадим в классе NewsIBlockController следующие методы:
//обработчик события `OnRestServiceBuildDescription`.
//В нём регистрируются методы rest api и указываются их обработчики
public static function addCustomRestMethods(): array
{
return [
'iblock' => [
'iblock.Element.add' => [
'callback' => [__CLASS__, 'iBlockElementAdd'],
'options' => [],
],
],
];
}
//упрощённый метод для добавления нового элемента
public static function iBlockElementAdd($query, $nav, CRestServer $server): array
{
try {
if ($query['error'])
{
throw new \Bitrix\Rest\RestException( 'Message', 402, \CRestServer::STATUS_PAYMENT_REQUIRED );
}
if (!isset($query['iblockId']))
{
throw new \Bitrix\Rest\RestException( 'IBLOCK_ID can not be empty', 400, \CRestServer::STATUS_WRONG_REQUEST );
}
if (!isset($query['fields']))
{
throw new \Bitrix\Rest\RestException( 'Iblock fields can not be empty', 400, \CRestServer::STATUS_WRONG_REQUEST );
}
\Bitrix\Main\Loader::includeModule('iblock');
global $USER;
$el = new \CIBlockElement;
$arFields = Array(
"MODIFIED_BY" => $USER->GetID(),
"IBLOCK_SECTION_ID" => false,
"IBLOCK_ID" => (int)$query['iblockId'],
"NAME" => $query['fields']['NAME'],
"CODE" => $query['fields']['CODE'],
"ACTIVE" => "Y",
);
if($elId = $el->Add($arFields))
return ['result' => $elId];
else{
throw new \Bitrix\Rest\RestException( $el->LAST_ERROR );
}
}
catch (Exception $e){
return [
'error' => $e->getCode(),
'error_description' => $e->getMessage()
];
}
}
Теперь можно добавлять новые элементы инфоблоков через запрос вида:
Яндекс.Маркет постепенно переводит новые города на формат маркетплейса и показывает их жителям только те товары, которые можно купить прямо на Маркете. В этой статье расскажем, как настроить обработку заказов в формате маркетплейса в 1С-Битрикс с помощью модуля «Яндекс.Маркет для бизнеса».
Как подключиться?
Выберите способ работы;
Наполните каталог товаров;
Настройте обработку заказов через API.
Обратитесь в «Техдиректор» за помощью, если сталкиваетесь с технической проблемой (2000 ₽ за час без абонентской платы на промо-тарифе).
Выберите способ работы
Перед подключением необходимо выбрать модель, по которой вы хотите взаимодействовать с Маркетом:
FBY — привозите товары на склад Маркета заранее. Маркетплейс выполняет хранение, упаковку и доставку по России. Проверьте наличие склада в вашем городе;
FBS — привозите упакованный заказ в пункт приёма или сортировочный центр, маркетплейс выполняет доставку по России. Проверьте наличие сортировочных центров и пунктов приема заказов в вашем городе;
Экспресс — за 30 минут собираете заказы и передаёте их курьеру Маркета для доставки по городу за 1–2 часа. Работает в ограниченном списке населенных пунктов;
После оставьте заявку на подключение и дождитесь доступ в личный кабинет в ответном письме в течение нескольких дней.
Наполните каталог товаров
Обновление информации о товарах в каталоге Маркета выполняется с помощью прайс-листов. Правила формирования файла можно настроить в административной панели 1С-Битрикс раздел Прайс-листы (Маркет для бизнеса → Подготовка прайс-листа).
Особенности сопоставления полей
На шаге Сопоставление полей вы можете выбрать откуда загружать данные прайс-листа. Для добавления нового тега нажмите «Добавить элемент» и выберите требуемый тег.
Объединение торговых предложений на одной карточке Маркета: нажмите «Добавить атрибут элемента offer» и выберите group_id. Заполните источник - Свойства предложения, поле - Элемент каталога;
Дополнительные картинки товара: добавьте новый тег picture, выберите свойство (Свойства элемента или Свойства предложения), в котором хранятся дополнительные фотографии.
Поиск карточки товара на Маркете использует штрихкод (barcode) и код производителя (vendorCode): добавьте требуемый тег, выберите свойство, в котором храните значение. Если данных достаточно, ваш товар будет привязан к готовой карточке товара, вам не понадобиться выполнять поиск вручную;
Маркет рассчитывает стоимость доставки (DBS) и возможность отгрузки (FBS) на основе веса (weight) и размеров товара (dimensions): добавьте теги weight и dimensions, выберите источник из рекомендаций;
Маркируемые товары необходимо отметить в прайс-листе модели DBS: добавьте тег cargo-types, выберите источник из рекомендаций. В модели FBS необходимость маркировки определяется на основе принадлежности к категории;
Свойства карточки товара модели DBS передайте в тегах param: выберите источник Умные свойства для тега param и его атрибутов согласно документации. Умные свойства доступны, если включен механизм Единого управления свойствами, иначе добавьте для каждого свойства отдельный тег param и заполните название. Необходимо указать все важные характеристики товара — цвет, размер, объем, материал, вес, возраст, пол, и т. д.
Обратитесь в Техдиректор за помощью, если сталкиваетесь с технической проблемой (2000 ₽ за час без абонентской платы на промо-тарифе).
Прайс-лист DBS
На вкладке Общие настройки выберите Вид размещения - ADV/DBS, Тип описаний - Упрощенный. Отметьте Обновлять YML автоматически и укажите Период полной выгрузки (например, 1 час).
Настройте отбор товаров на шаге Выбор товаров и доставка: создайте группу товаров с условием Доступность равно Да, снимите отметку Добавить в прайс-лист все товары из инфоблока.
Сохраните и выгрузите прайс-лист, скопируйте ссылку в раздел Автообновление каталога (Товары) личного кабинета Маркета.
Карточки товаров FBS/FBY/Экспресс
На вкладке Общие настройки выберите Вид размещения - FBS/FBY, Тип описаний - Каталог. Снимите отметку Обновлять YML автоматически и оставьте невыбранным Период полной выгрузки.
В качестве shop-sku на шаге Сопоставление полей используйте:
Каталог с предложениями — источник Предложение и поле Ид (простые товары тоже поддерживаются);
Каталог с простыми товарами — источник Элемент и поле Ид.
На шаге Выбор товаров и доставка создайте группу товаров, отобрав товары которые хотите добавить, снимите отметку Добавить в прайс-лист все товары из инфоблока.
Сохраните файл прайс-листа на компьютер после выгрузки. И загрузите в разделе Каталог личного кабинета.
Обновление цен FBS/FBY/Экспресс
На вкладке Общие настройки выберите Вид размещения - FBS/FBY, Тип описаний - Цены. Отметьте Обновлять YML автоматически и укажите Период полной выгрузки (например, 1 час).
Заполните сопоставление полей аналогично прайс-листу с карточками товара.
Настройте отбор товаров на шаге Выбор товаров и доставка: создайте группу товаров с условием Доступность равно Да, снимите отметку Добавить в прайс-лист все товары из инфоблока.
Укажите ссылку на прайс-лист в разделе Цены (Товары) личного кабинета Маркета.
С какими проблемами можете столкнуться
Наценка на товары для компенсации единого тарифа доставки (DBS) — сформируйте шаблон для тега price или создайте отдельный тип цены;
Прайс-лист долго формируется/обновляется — выполните профилирование процесса экспорта, оптимизируйте работу сервера;
Товар продается упаковками — сформируйте шаблон для тега price с учетом коэффициента упаковки.
Обратитесь в Техдиректор за помощью, если сталкиваетесь с технической проблемой (2000 ₽ за час без абонентской платы на промо-тарифе).
Настройте обработку заказов в 1С-Битрикс
Магазин может обрабатывать заказы в личном кабинете без использования 1С-Битрикс. Какие преимущества 1С-Битрикс:
В личном кабинете
В 1С-Битрикс
Обновление остатков
Прайс-листы (каждые 30 минут) или вручную
API каждые 15 минут
Подтверждение заказа
Вручную в течение 2-х часов после заказа
Автоматически
Изменение статусов, состава заказа, маркировка товаров, трек-номер
Вручную
Автоматически из заказа 1С-Битрикс
Расчет даты доставки (DBS)
Настройки в личным кабинете
Доставка модуля интернет-магазин с учетом местоположения
Единый кабинет из разных источников
Нет
Да
Обработка заказа Маркета в 1С-Битрикс осуществляется через API. Настройка включает в себя несколько этапов, вам потребуется:
Добавить кампанию в 1С-Битрикс (Маркет для бизнеса → Обработка заказов из маркетплейса → Настройки);
Заполнить значения на вкладке Общие настройки согласно подсказкам, остальные вкладки для начала можно оставить по умолчанию. Скопируйте Адрес для запросов в раздел Настройки → Настройки API личного кабинета;
Выбрать способ подтверждения заказов через API (Настройки → Метод работы);
Настроить условия доставки и пункты самовывоза (Настройки → Доставка магазина), если выбрали модель DBS. Указанные условия будут отображены на витрине;
Создать тестовый заказ в разделе Настройки → Тестовые заказы личного кабинета. В 1С-Битрикс должен появиться заказ, его можно отменить;
Выполнить Самопроверку и оправить магазин на проверку службы качества.
С какими проблемами можете столкнуться
Сайт отвечает некорректно — исключите редиректы и проверьте https-сертификат сайта;
Ошибки при обработке запросов — адаптируйте пользовательские обработчики событий к запросам Маркета;
Сайт отвечает слишком долго — выполните профилирование запросов, оптимизируйте работу сервера;
Настройка доставки (DBS) — добавьте требуемые варианты доставки на вкладке Оплата и доставка, настройте график отгрузки и расписание доставки.
Товар продается упаковками, особенности учета остатков — модуль Маркет для бизнеса позволяет реализовать собственную бизнес-логику программно;
Коллеги, Добрый день! Пожалуйста подскажите как решить проблему. Задача: Создать комментарий к сделке с прикрепленным файлом. Использую вот такой код: URL_OCENKA = URL файла с диска для загрузки Помогите пожалуйста
При отправке запроса веб-сервису, возникла проблема с типами передаваемых параметров. Мне необходимо было передать дату. Сначала я подумал, что отправлю ее обычно как элемент массива, SoapClient "переварит" массив и все будет окей. Но веб-сервис вернул ошибку, код ошибки гласит: "параметр передан в структуру, но по типу не подходит ко входным параметрам".
Посмотрев внимательней на описание входных значений, стало понятно, что веб-сервис ждет параметр типа ДатаВремя, формат - DateTime::ATOM. Чтобы отправить через Soap параметр с указанием типа, необходимо использовать SoapVar.
class MyStructure
{
public $Params;
}
$date = new DateTime();
$param = new MyStructure();
$param->Params->Property->name = 'nameParams';
$param->Params->Property->Value = new SoapVar($date->format('c'), XSD_DATETIME, 'dateTime', 'http://www.w3.org/2001/XMLSchema', 'Value');
good afternoon people. I'm starting my company and I'm trying to use the Bitrix Site Manager sales systems development tool and I have some doubts and based on the information in the documentation it's not helping much. Anyone available to help me who speaks English or Portuguese?
Запилил мини-сервис для автоматического тестирования сайтов на визуальный регресс. Будет полезен битриксоидам в первую очередь. Пользуйтесь: https://visualmatching.ru/
Добрый день. Настроил NTLM авторизацию , сделал всё по инструкции. Если в админке включаю (Включить переадресацию NTLM авторизации) перебрасывает на 8891 порт и после ввода логина и пароля - Не удается получить доступ к сайту. Через пару секунд запрашивает логин и пароль опять , и так до бесконечности. В логах записей нет. Что это может быть?
Здравствуйте, в последнее время на моем сайте стали регистрироваться по 10 в день и больше какие-то пользователи с абракадабрами вместо нормальных логинов kazbanovvasilij2@gmail.com,StevenmekVD, AngelodafUI и т.п. Пытались удалять из регистрации на сайте, они снова присылают. Что посоветуете? Похоже на спам,но какой-то необычный.
Добрый день! Нужно обновлять остатки товаров по связке Артикул (свойство товара) и Производитель (свойство товара).csv прикрепляю. При обновлении есть только поля артикул, производитель, остаток. Подскажите, пожалуйста, как это можно сделать? Если это невозможно сделать, обоснуйте почему, пожалуйста.
Проконсультируйте меня, пожалуйста. Вопрос такой: На сайте (в настройках главного модуля) подключено объединение стилей в один общий файл. Это дает приличный прирост скорости загрузки. Но проблема вот в чем: периодически(при жесткой очистке кеша) этот объединенный файл стилей становится недоступен и страница предстает без стилизации (Прилагаю скриншот).
Над этой задачей я бьюсь 2-й месяц, и не могу понять, почему подобное происходит. Подскажите, пожалуйста.
В битриксе можно создавать свои модули. Начальник хочет, чтобы этот модуль можно было запустить из конкретной задачи. К примеру, вошел в задачу, нажал меню и там был вызов нужного модуля. По кнопке "ЕЩЁ" И чтобы в модуль передавался номер задачи. Не могу найти образец как это сделать. Сейчас меню модуля появляется в "Администрирование" -> "Контент" в боковом меню.
Уже как только ни пытался, гуглил, лазил по этому форуму. Никак не получается прицепить купон к заказу. Везде примерно один и тот же код предлагают, но оно не работает - купон не появляется на странице заказа в админке.
Пользователи начали жаловаться что зависает приложение битрикс, помогает только завершение процесса и перезапуск. Диагностика проблемы показала что зависание происходит при обращении к поиску, а конкретно при выполнении вот этого запроса: /bitrix/components/bitrix/im.messenger/im.ajax.php?CONTACT_LIST&V=130
Проверил через последний хром, открыв desktop_app, он тоже зависает, конечно не весь как приложение битрикс, а только вкладка, которую он заботливо предлагает закрыть. Значит проблема не в приложении.
А оказалась проблема в функции быстрого поиска чатов. Эта функция загружает с сервера ВСЕ чаты, контакты, сотрудников и телефоны, доступные пользователю. А после она видимо формирует из них html контейнеры чтобы оперативно выводить при поиске.
Но дело в том, что при разработке не учитывалось масштабирование системы, и то что пользователей и чатов может быть очень много. Так например произошло в моем случае, и формирование ответа сервера мало того что занимало >9 секунд, так ещё и ответ весил 2,6 Мб, это всё был json с сотрудниками и чатами открытых линий и CRM:
Решение Сначала попытался отключить параметр "Включить предварительную загрузку всех пользователей портала для быстрого поиска" в настройках модуля Веб-мессенджер. Но это не помогло, так как отключился только запрос сотрудников, а чаты так и продолжили загружаться, плюс проявился ещё один баг, после отключения этой функции, но о нем ниже.
Пришлось опять лезть в ядро что бы поправить ошибку, оказалось что данные для ответа собирает метод \CIMContactList::GetList() Находится он в этом файле /home/bitrix/www/bitrix/modules/im/classes/general/im_contact_list.php:22 И оказывается он принимает параметр LOAD_CHATS который отвечает за загрузку всех доступных пользователю чатов, но видимо забыли вывести этот параметр в настройки модуля.
Предлагаю костылить следующе, в файле обработчике ajax запросов из веб-мессенджера /home/bitrix/www/bitrix/components/bitrix/im.messenger/im.ajax.php в строке 1165 добавляем передачу параметра LOAD_CHATS в метод \CIMContactList::GetList():
Добавляем так же что бы параметр брался из настроек, как и с сотрудниками, что бы можно было отключить. Соблюдаем странный перегон логической переменной в Y/N, что метод нас понял.
На этом всё, ждем исправлений от разработчиков, а пока они их не сделают придётся костылить это после каждого обновления модуля.
Дополнительный баг
А теперь баг о котором написал выше. Если отключить загрузку сотрудников в настройках модуля, то тогда перестаёт работать поиск при делегировании чатов открытых линий, так как он производит поиск только по локально сохранённым сотрудникам.
При этом при добавлении сотрудника в чат, поиск производится так же через запрос на сервер, но при делегировании только локально, забыли наверное. Я лезть в js не стал, включил загрузку сотрудников, без загрузки всех чатов зависания нет, так как чатов грузилось аж 45998. При этом, без чатов, запрос выполняется всё равно долго >7 секунд, но там есть кэширование, которое более менее выручает. В общем ждём исправлений.
Добавление меток (точек) на изображениях элементов инфоблока
Метки на изображениях элементов инфоблока - это бесплатный модуль, который расширяет базовый инструмент административной панели и позволяет управлять метками на изображениях непосредственно на страницах редактирования элементов. Модуль позволяет получить в результирующий массив arResult все координаты точек для дальнейшего позиционирования в шаблоне.
Возможности:
Создание меток для детального изображения
Создание меток пользовательского свойства типа файл
Создание меток для пользовательского свойства типа файл (множественное)
Получение меток в шаблоне компонента.
Метки не привязаны к шаблону, что позволит Вам выполнить любой дизайн отображения меток.
Примечание: модуль не выведет точки автоматически в шаблон, в связи с тем, что это просто невозможно (у всех шаблон разный). Он лишь позволяет получить их в результирующем массиве arResult Достаточно небольших познаний в области верстки и Вы сможете реализовать любой подходящий для Вашего проекта дизайн отображения меток на изображениях.