воскресенье, 12 апреля 2009 г.

Плагин Яндекс.Карт для Joomla

В этой заметке я хочу рассказать Вам о плагине для встраивания Яндекс.Карт в свободно распространяемую CMS Joomla.

Этот плагин разработан командой проекта YAR-IT и загрузить его можно по адресу http://yar-it.com/download/11-joomla-1/14-plugin/29-plg_ymap01.html

Он устанавливается стандартным способом для плагинов Joomla.






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




После установки необходимо его включить и настроить.

Мы заходим в Plugin Manager (менеджер плагинов) и находим в таблице запись Content - Yandex Maps.

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

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

Щелкните по картинке для того, чтобы посмотреть ее в полный размер.

В правой части мы будем задавать параметры для отображения Яндекс.Карты.

В поле YMAP_API – вводим API-ключь для Вашего сайта,

в поля YMAP_WIDTH и YMAP_HEIGHT – ширину и высоту окна карты (в пискселях px или %),

далее в поля YMAP_LAT и YMAP_LON – координаты центра карты (широту и долготу) ,

в YMAP_ZOOM – масштабный уровень карты.

Далее идут несколько переключателей для задания элементов управления картой.

YMAP_ZOOMTYPE – задает тип элемента масштабирования:

YMAP_ZOOMTYPE_N - YMaps.Zoom – элемент масштабирования, который позволяет менять разрешение карты с определенным шагом;

YMAP_ZOOMTYPE_S - YMaps.SmallZoom – компактный элемент масштабирования (без слайдера, только кнопки уменьшения и увеличения масштаба),

YMAP_ZOOMTYPE_O - без элемента масштабирования .

YMAP_MAPTYPE – задает тип отображения карты:

YMAP_MAPTYPE_S – обычная карта,

YMAP_MAPTYPE_SP – спутниковый снимок.

YMAP_MAPTYPE_G – гибрид.

YMAP_SHOWMAPTYPE - включает и выключает элемент управления, позволяющий выбрать различные типы карты.

YMAP_SHOWMINIM - отображать или нет обзорную карту

YMAP_SCROLLZOOM - включает и выключает возможность масштабирования с помощью колесика мыши

YMAP_DBLCLIKZ – включает и выключает возможность центрирования карты по двойному щелчку мыши.

В опциях ниже задаются координаты для двух меток, текст метки и html-код в балуне, который открывается по щелчку на метке.

YMAP_PLACEMARK – отображать или нет метку

YMAP_LATPL – координата метки по широте

YMAP_LONPL – координата метки по долготе

YMAP_TEXT – текст в метке

YMAP_OPENM - отображать или нет балун

YMAP_CONT – содержимое балуна.

Для включения плагина необходимо включить опцию Enabled в левой части окна.

Сохранить сделанные настройки.

Для добавления карты на страницу в нужном месте необходимо вставить строку {ymap}.

Пример отображения

Пример использования плагина Яндекс.Карт для Joomla

Посмотреть рабочий пример можно здесь.

31 комментарий:

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

    ОтветитьУдалить
  2. Я по этому поводу написал специальную заметку по адресу Доработка плагина Яндекс.Карт для Joomla

    ОтветитьУдалить
  3. а как добавить количество меток?

    ОтветитьУдалить
  4. В этом плагине можно использовать только две метки

    ОтветитьУдалить
  5. А как сделать чтоб на следующей странице, например были еще пара меток, других?

    ОтветитьУдалить
  6. Чтобы добавить меток нужно найти строчку for ($i = 0; $i < 2; $i++) в файле plugin_yandexmap.php и заменить $i < 2 на $i < 25, должно сработать.
    Подпортит, конечно перфоманс, но если правильно подобрать число, то не сильно и заметно будет.

    На сайте про Новгород кто-то навешал штук 20 кинотератров таким образом и ничего, работает. :-)

    ОтветитьУдалить
  7. Да, забыл самое главное: при этом можно добавлять последующие точки только из текста статьи, т.е. указывать параметры плагина внутри тэга {ymap}

    ОтветитьУдалить
  8. Выложил превоначальную версию плагина для Joomla 1.5 на своем сайте http://webmap-blog.ru/files/soft/plg_ymap01.zip

    ОтветитьУдалить
  9. Установил плагин для Joomla 1.5, вставил полученный код от Яндекса, окно на странице появилось, а сама карта не отображается. Не подскажите причину?

    ОтветитьУдалить
  10. Вы API ключ правильный ввели для своего сайта?

    ОтветитьУдалить
  11. Спасибо, уже разобрался, была отключена загрузка mootools, т.к. на сайте не используется. Для решения проблемы я просто вставил следующий код в текст самой страницы - все заработало, И теперь все нужные скрипты грузятся ТОЛЬКО на той странице, где расположена сама карта.
    КОД:



    window.addEvent('domready', function() {
    var map = new YMaps.Map(document.getElementById("YMaps_0"));
    center = new YMaps.GeoPoint(39.831767, 57.577674);
    map.setCenter(center, 10);

    var zoomControl = new YMaps.Zoom();
    map.addControl(zoomControl);
    var typeControl = new YMaps.TypeControl();map.addControl(typeControl);


    map.enableScrollZoom();
    map.enableDblClickZoom();
    var placemark_0 = new YMaps.Placemark(new YMaps.GeoPoint(39.831767, 57.577674));
    placemark_0.setIconContent("Жми сюда!");
    map.addOverlay(placemark_0);
    placemark_0.setBalloonContent("Привет, Joomla пользователь");
    placemark_0.openBalloon();var placemark_1 = new YMaps.Placemark(new YMaps.GeoPoint(39.831767, 57.577674));
    placemark_1.setIconContent("Жми сюда!");
    map.addOverlay(placemark_1);
    placemark_1.setBalloonContent("Привет, Joomla пользователь");
    placemark_1.openBalloon();
    }
    )

    ОтветитьУдалить
  12. ПРАВИЛЬНЫЙ КОД:



    window.addEvent('domready', function() {
    var map = new YMaps.Map(document.getElementById("YMaps_0"));
    center = new YMaps.GeoPoint(39.831767, 57.577674);
    map.setCenter(center, 10);

    var zoomControl = new YMaps.Zoom();
    map.addControl(zoomControl);
    var typeControl = new YMaps.TypeControl();map.addControl(typeControl);


    map.enableScrollZoom();
    map.enableDblClickZoom();
    var placemark_0 = new YMaps.Placemark(new YMaps.GeoPoint(39.831767, 57.577674));
    placemark_0.setIconContent("Жми сюда!");
    map.addOverlay(placemark_0);
    placemark_0.setBalloonContent("Привет, Joomla пользователь");
    placemark_0.openBalloon();var placemark_1 = new YMaps.Placemark(new YMaps.GeoPoint(39.831767, 57.577674));
    placemark_1.setIconContent("Жми сюда!");
    map.addOverlay(placemark_1);
    placemark_1.setBalloonContent("Привет, Joomla пользователь");
    placemark_1.openBalloon();
    }
    )

    ОтветитьУдалить
  13. КОД в Вашем блоге почему-то полностью не публикуется.

    ОтветитьУдалить
  14. Приветствую! Собственно нет ни каких ограничений на создание меток! все что необходимо сделать это
    {ymap параметр=1 параметр=2 параметр=3.........}
    где, имена параметров можно взять из xml файла плагина

    ОтветитьУдалить
  15. хех, подскажите где скачать компонент. Оф сайт закрыт ((

    ОтветитьУдалить
  16. admin, спасибо тебе человек!

    ОтветитьУдалить
  17. Гуд! Эээм, может подскажите, вот есть карта, есть объект выделенный на ней, и вот юзер тыкает туда, и нужно что бы в этот момент открывалась страница посвященная данному объекту с возможностью комментировать ее. Ну или как вариант посно ссылки делать в описании объекта?

    ОтветитьУдалить
  18. не устанавливается пол joomla 1.5.15 - пишет не найден xml файл для joomla

    ОтветитьУдалить
  19. Добрый день. Скажите а такое www.pitomec.ru/map реально с помощью компонента сделать?

    ОтветитьУдалить
  20. немогу понять куда вставить {ymap} чтоб на сайте отобразилась карта, я ево установил в joomla1.5 настроил , включил, и код получил а что дальше не врублюсь помогите плиззззззззззззззззззз

    ОтветитьУдалить
  21. Нужно {ymap} добавить в текст записи

    ОтветитьУдалить
  22. Вставил плагин, все работет. Но возникает одна проблема. У меня 2 домена, а сайт находиться в одном хранилище! Т.е. могу ввести ключ в поле ключа только для одного домена. Если осуществляется преход с другого домена то возникает ошибка "ключ не найден". Как можно решить данную проблему?
    Домены www.fitnessekb.ru и www.fitnesekb.ru

    ОтветитьУдалить
  23. Прошу прощения с балуном сам на косячил все! Сейчас все ок!

    ОтветитьУдалить
  24. Можно вставить сразу два ключа разделив один от другого символом ~, ели размер поля ввода позволяет.

    ОтветитьУдалить
  25. Да, спасибо проблема решена. Вашим способом!

    ОтветитьУдалить
  26. Спасибо, поставила на один из сайтиков!

    ОтветитьУдалить
  27. Посоветовал другу поставить данный плагин, он остался доволен. Спасибо вам.

    ОтветитьУдалить
  28. Подскажите, как включить всплывающие подсказки к баллунам.

    ОтветитьУдалить
  29. Здравствуйте,
    Как можно святься с админом этого сайта, есть предложения по Яндекс-карте...

    ОтветитьУдалить