Mapex 2 - Яндекс.Карты для MODX Revolution!
- 01.10.2012
- MODx
Как и обещали, продолжаем работать над компонентом Mapex - Яндекс.Картами для MODX Revolution.
Сегодня мы выпускаем вторую версию этого компонента, которая содержит революционные (:)) изменения по сравнению с первой версией.
Пример
Так выглядит Mapex "изнутри", в админке сайта (это рисунок):
И вот такую карту мы может увидеть уже на сайте (а это уже настоящая карта, она полностью интерактивна):
Видео с примером работы:
Возможности
- Быстрый поиск на карте по адресу.
- Установка произвольного количества точек на карте, задание им цвета, текста и других аттрибутов.
- Рисование линий, многоугольников.
- Прокладка маршрута из точки А в точку Б.
- Вид карты в админке полностью идентичен виду карты на сайте (само собой за исключением режима редактирования).
- Поддержка современного API Яндекс.Карты 2.0
Установка & настройка
- Скачайте установочный пакет или установите его из репозитория MODX: https://modx.com/extras/package/mapex2.
- Создайте новый TV и укажите ему тип ввода mapex.yandex
- Готово.
Если вам необходимо указать начальное состояние карты для вновь создаваемого ресурса, проделайте следующие операции:
- Создайте произвольный ресурс, укажите необходимое состояние карты, расставьте точки и нарисуйте другие элементы.
- Скопируйте код из поля ввода, расположенного ниже карты.
- Вставьте этот код в поле "Значение по-умолчанию" вашего TV на вкладке "Параметры ввода".
Использование
В пакет включен единственный сниппет mapexDrawMap, который рисует карту.
Его минимальный вызов:
[[!mapexDrawMap? &map=`[[*mapexTV]]`]]
Принимаемые параметры (приведены значения по умолчанию):
&map=`` - обязательный параметр, принимает JSON массив из TV.
&tpl=`mapexMapTpl` - основной шаблон
&placemarkTpl,&polylineTpl,&polygoneTpl,&routeTpl - шаблоны для точки, линии, многоугольника, маршрута
&controls=`mapTools` - набор элементов управления, которые будут доступны на карте, через запятую. Допустимые: mapTools,typeSelector,zoomControl или smallZoomControl,scaleLine,miniMap,searchControl,trafficControl (см. документацию Яндекс.Карт).
&mapId=`mapexMap` - id слоя (div), в котором будет отрисована карта. Вам не нужно создавать этот слой, вам необходимо только указать его id.
&mapWidth=`500px` - ширина карты
&mapHeight=`400px` - высота карты
&includeJs=`1` - подключить JS файл Яндекс.Карт. Поставьте 0, если вы подключили его вручную на странице.
История изменений
2.0.1 (10.10.2012)
[f] Исправлена ошибка при работе на сайте с установленой русской локалью. Теперь все кооррдинаты принудительно приводятся к числу с разделителем-точкой.
[f] Исправлена проблема при НЕ выборе цвета для линии или полигона.
[m] Все элементы управления окончательно переведены на русский язык.
2.0 (01.10.2012)
[m] Кардинальная смена функциональности и хранения данных. Не совместимо с Mapex более ранних выпусков.
[+] Теперь можно добавлять точки, линии, полигоны, маршрут
P.S. Во многом Mapex существует только благодаря http://clubs.ya.ru/company/52369