Карта (PRO)
Карта с метками. У каждой метки есть название, псевдоним, телефон, почта, адрес и описание, так что одним полем описывается целый набор точек.
Какая карта рисуется
Провайдер выбирается один раз на сайт, системной настройкой pageblocks_map_type:
| Значение | Провайдер | Нужен ключ |
|---|---|---|
leaflet | Leaflet поверх OpenStreetMap | Нет |
ymaps | Яндекс.Карты | Да — pageblocks_yandex_apikey |
googlemaps | Google Maps | В компоненте не обрабатывается |
Настройки, общие для всех: центр карты (48.737, 18.893) и масштаб. У Leaflet добавляются иконка метки, её размер, стиль подложки (light, dark, voyager или свой) и переключатели поведения — перетаскивание, зум колесом, зум двойным кликом, клавиатура, зум касанием. У Google вместо них свой набор элементов управления. Яндексу достаточно центра и масштаба.
По умолчанию — Leaflet, и ему ничего не нужно
После установки pageblocks_map_type стоит в leaflet: он работает без ключа и без регистрации где бы то ни было. Для большинства сайтов на этом настройка карт и заканчивается.
Переключились на ymaps — заполните pageblocks_yandex_apikey, иначе карта останется пустой.
Вывод пишется руками
Значение — JSON-массив меток:
[{"lat": 55.755826, "lng": 37.617299, "title": "Офис", "address": "…"}]Готового сниппета для вывода нет. Разберите значение и отдайте координаты той картографической библиотеке, которую и так грузит тема:
<div id="map" data-markers='{$points}'></div>На фронте это сделано намеренно: менеджеру нужен один провайдер, странице может понадобиться другой, а метки в любом случае остаются обычными данными.