воскресенье, 12 июля 2009 г.

Доработка плагина Яндекс.Карт для Joomla – продолжение

В заметках на своем блоге я уже рассказывал Вам о плагине Яндекс.Карт для Joomla – смотрите «Плагин Яндекс.Карт для Joomla» и «Доработка плагина Яндекс.Карт для Joomla».


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


Мы добавим две новые возможности – это форму поиска по карте и загрузку файлов в формате YMapsML.


Нам для работы будут необходимы два файла – это plugin_yandexmap.xml и plugin_yandexmap.php


Мы их будем продолжать редактировать.


Используя ftp-клиент мы заходим на сервер Вашего сайта в папку, где установлена Joomla.


Находим там папку plugins, а в ней папку content.


В этой папке находиться два файла: plugin_yandexmap.xml и plugin_yandexmap.php.


Добавим сначала строку поиска по карте.


25 июня 2009 года вышла новая версия API Яндекс.Карт 1.1.0


В этой версии появился новый элемент управления, размещаемый на карте, YMaps.SearchControl  – поиск по карте.


Его мы и будим использовать.


Открываем сначала файл plugin_yandexmap.xml в любом текстовом редакторе или Блокноте.


Находим в нем следующие строки:








Здесь прописываются элементы формы для добавления обзорной миникарты в режиме администрирования.







Joomla - Профессиональный сайт за один день
86 видеоуроков, 12 часов 46 минут посвящены лучшей системе для создания сайтов - Joomla!



И перед ними вставляем следующий код:








Он служит для дополнения элементов формы добавления строки поиска в режиме администрирования.


Сохраняем измененный файл.


После этого открываем файл plugin_yandexmap.php.


С начала меняем версию API.


Для этого находим строку



$doc->addScript('http://api-maps.yandex.ru/1.0/index.xml?key='.$my_params['apiKey']);

и изменяе значение версии с 1.0 на 1.1.


В результате



$doc->addScript('http://api-maps.yandex.ru/1.1/index.xml?key='.$my_params['apiKey']);

Находим в нем строки



if (intval($my_params['showMiniMap'])) {
$mmControl = 'var minimapControl = new YMaps.MiniMap();';
$mmControl .= 'map.addControl(minimapControl);';
} else {
$mmControl = '';
}

И передними добавляем следующий код:



if (intval($my_params['showSearchControl'])) {
$searchControl = 'map.addControl(new YMaps.SearchControl(), new YMaps.ControlPosition(YMaps.ControlPosition.BOTTOM_LEFT, new YMaps.Size(5, 20)));';
} else {
$searchControl = '';
}

Еще ищем строку '.$mmControl.' и перед ней добавляем строчку  '.$searchControl.'


Сохраняем измененный файл.


Теперь необходимо зайти на сайт и на странице администрирования в менеджер плагинов и выбираем плагин Content - Yandex Maps.


Открываем его для редактирования.


В правой части окна, среди параметров должен появиться новый YMAP_SHOWSEARCHCONTROL и два переключателя состояния YMAP_YES и YMAP_NO.


Отмечаем состояние YMAP_YES и сохраняем изменения.


Открываем страницу с Яндекс.Картой. На карте должен появиться новый элемент управления YMaps.SearchControl.


Доработка плагина  Яндекс.Карт для Joomla-строка поиска по карте

Скачать измененные файлы: plugin_yandexmap.xml и plugin_yandexmap.php


Посмотреть пример в действии


В следующей заметке мы добавим возможность подгружать на карту файл в формате YMapsML.

среда, 1 июля 2009 г.

Отображение разнородных объектов на Яндекс.Картах

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



Как работать с группами объектов, удалять и добавлять их на Яндекс.Картау показано в двух видеороликах по материалам Я.Субботника в Киеве, прошедшего 25 апреля 2009 года.



Александр Тармолов. Мастер-класс: Отображение разнородных объектов на Яндекс.Картах. Часть 1





Александр Тармолов. Мастер-класс: Отображение разнородных объектов на Яндекс.Картах. Часть 2