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

Автор: | 18.04.2009

Мне задали такой вопрос: «Подскажите, каким образом нужно прописать в .php плагина “Яндекс-Карты”, чтобы отобразились элементы ToolBar (панель инструментов) , ScaleLine(линейка)?».

В этой заметке я расскажу как это сделать на примере добавления элемента ToolBar (панель инструментов).

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

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

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

Их мы и будем редактировать.

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

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

<param name=»showMiniMap» type=»radio» size= «1» default=»0″ label=»YMAP_SHOWMINIM» description=»YMAP_SHOWMINIM_D»><option value=»1″>YMAP_YES</option>

<option value=»0″>YMAP_NO</option>

</param>

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

Копируем данные строки и вставляем перед ними.

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

<param name=»showToolBar» type=»radio» size= «1» default=»0″ label=»YMAP_SHOWTOOLBAR» description=»YMAP_SHOWTOOLBAR_D»><option value=»1″>YMAP_YES</option>

<option value=»0″>YMAP_NO</option>

</param>

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

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

Затем редактируем файл plugin_yandexmap.php.

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

if (intval($my_params[‘showMiniMap’])) {$mmControl = ‘var minimapControl = new YMaps.MiniMap();’;

$mmControl .= ‘map.addControl(minimapControl);’;

} else {

$mmControl = »;

}

Копируем и вставляем данный блок кода перед ними.

Изменяем его следующим образом

if (intval($my_params[‘showToolBar’])) {$toolbarControl = ‘var toolbarControl = new YMaps.ToolBar();’;

$toolbarControl .= ‘map.addControl(toolbarControl);’;

} else {

$toolbarControl = »;

}

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

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

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

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

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

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

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

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

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

Аналогично можно добавить и элемент управления ScaleLine – масштабную линейку.

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

  1. Андрей

    Уважаемый админ!
    Спасибо Вам огромное за помощь!
    Я как начинающий в области php html css) намучался с этими картами…
    По вашему примеру сделал всё на ура!)
    Добавил и панель, и линейку, и даже сделал их с переводом)

    Однако хочу ещё просить Вашей помощи.
    Когда я захожу на страничку с картой(или обновляю её) на своём сайте, то у меня надпись …ЗАО «ТГА» 2006..и т.д.
    которая отображается в нижнем правом углу, отображается выше положенного(
    Но как только стоит подвигать карту, либо приблизить её, то надпись возвращается вниз на своё родное место)
    Что мне в коде необходимо поменять, чтобы это исправить?

  2. admin

    Наверное это происходит из-за настроек в таблице стилей CSS. Нужно попробовать поизменять стили на странице и посмотреть что будет происходить

  3. Николай

    Попробовал по аналогии вышеизложеного доработать плагин и добавить поиск по карте. Добавил сначала класс YMaps.SearchControl, но к сожалению форма поиска не отображается.
    Хотелось бы автора блога попросить помощи в данном вопросе и «обьеденить» 2 статьи «Доработка плагина Яндекс.Карт для Joomla» и «Добавляем поиск по адресу на Яндекс.Карту»

  4. Дмитрий

    Уже давно вышел новый плагин + компонент , на офсайте yar-it.com можно скачать

  5. vadim_host

    Подскажите пожалуста как осуществить чтоб метки могли ставить пользователи карты прямо с карты?

  6. griin_64

    Как получать координаты с Геосервера для отслеживания движения автомобиля?

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *