Mapex, Дополнение Яндекс.Карты для MODX Revolution.
Пример
Так выглядит Mapex "изнутри", в админке сайта (это рисунок):
Возможности
Быстрый поиск на карте по адресу.
Установка произвольного количества точек на карте, задание им цвета, текста и других аттрибутов.
Рисование линий, многоугольников.
Прокладка маршрута из точки А в точку Б.
Вид карты в админке полностью идентичен виду карты на сайте (само собой за исключением режима редактирования).
Поддержка современного API Яндекс.Карты 2.0
Установка и настройка
Скачайте установочный пакет или установите его из репозитория MODX: http://modx.com/extras/package/mapex2.
Создайте новый TV и укажите ему тип ввода mapex.yandex
Готово.
Если вам необходимо указать начальное состояние карты для вновь создаваемого ресурса, проделайте следующие операции:
Создайте произвольный ресурс, укажите необходимое состояние карты, расставьте точки и нарисуйте другие элементы.
Скопируйте код из поля ввода, расположенного ниже карты.
Вставьте этот код в поле "Значение по-умолчанию" вашего TV на вкладке "Параметры ввода".
Использование
В пакет включен единственный сниппет mapexDrawMap, который рисует карту.
Его минимальный вызов (убираем слеши):
[/[!mapexDrawMap? &map=`[/[*названиеTVяндекс-карт]/]`]/]
Принимаемые параметры (приведены значения по умолчанию):
&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` - ширина карты, для 100% выставляем `auto`
&mapHeight=`400px` - высота карты
&includeJs=`1` - подключить JS файл Яндекс.Карт. Поставьте 0, если вы подключили его вручную на странице.