Доработка компонента Яндекс.Карт для Joomla 1.5 – подключение народной карты. Продолжение.

На страницах своего блога я недавно писал о том, как можно доработать компонент Яндекс.Карт для Joomla 1.5 чтобы использовать Народную карту.

Но остался без внимания еще один момент, совместно с компонентом используется плагин.

Чтобы можно было встраивать Народную карту с использованием плагина, его также необходимо доработать.

Файл для редактирования yandexmaps.php расположен по адресу <папка установки Joomla>/plugins/content/.

В нем находим часть кода, отвечающий за вывод элемента управления типом карты.

После строк:

case 9:
	$output .= 'map'.$mC.'.addControl(new YMaps.TypeControl());' ."n";
	$output .= 'map'.$mC.'.setType(YMaps.MapType.MAP);' ."n";
break;

Добавляем следующий код:

case 10:
	$output .= 'map'.$mC.'.addControl(new YMaps.TypeControl([YMaps.MapType.PMAP, YMaps.MapType.PHYBRID]));' ."n";
	$output .= 'map'.$mC.'.setType(YMaps.MapType.PMAP);' ."n";
break;
case 11:
	$output .= 'map'.$mC.'.addControl(new YMaps.TypeControl([YMaps.MapType.PMAP, YMaps.MapType.PHYBRID]));' ."n";
	$output .= 'map'.$mC.'.setType(YMaps.MapType.PHYBRID);' ."n";
break;

А после кода добавления элемента поиска по карте

//поиск
if (isset($map->border) && (int)$map->border == 1) {
	$output .= 'map'.$mC.'.addControl(new YMaps.SearchControl());' ."n";
}

Поиск по народной карте:

//поиск по Народной карте с ограничением области поиска
if (isset($map->border) && (int)$map->border == 2) {
	$output .= 'var nnovgorodBounds = new YMaps.GeoBounds(';
	$output .= 'new YMaps.GeoPoint(43.77352,56.198029),' ;
	$output .= 'new YMaps.GeoPoint(44.119589,56.372946));';
	$output .= 'map'.$mC.'.addControl(new YMaps.SearchControl({geocodeOptions: {geocodeProvider: "yandex#pmap", boundedBy : nnovgorodBounds, strictBounds : true}}));' ."n";
}

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

После этого пробуем вставить нашу карту в статью, добавляя код для плагина.

Например, {yandexmaps view=map|id=1}

Наблюдаем народную карту.

Код файла yandexmaps.php с изменениями можно загрузить здесь.

  • Гость: мне кажется какой-то косяк с обработкой народной карты т.е. при установки масштаба увеличения в компоненте у карты, полного увеличения - до уровня домов не происходит, несмотря на изменения цифр хотя на шкале еще есть несколько пунктов для увеличения
  • Гость: Это увеличение не срабатывае только на картах, где масштаб СХЕМЫ меньше нужного значения. Тоесть масштаб ориентируется не на НАРОДНУЮ КАРТУ или СПУТНИК, а на СХЕМУ карты. Нужно, что то изменить в коде так, чтоб ориентация шла на НАРОДНУЮ КАРТУ, как это сделано в самой НАРОДНОЙ КАРТЕ при вставке её через код конструктора.
  • Гость: Так и не удалось сделать? увы, пока пользуемся что есть
  • Гость: Добрый день! Все сделал и настроил как написано все получилось, компонент работает, а вот плагин не хочет цеплять народные карты. Пишу в материале K2 {ymap} карту цепляет,(но не народную), а {yandexmaps view=map|id=1}, выводится текстом :( В чем может быть проблема? Если есть возможность жду ответа на dbeXereS2yandex.ru Спасибо!
  • Гость: И еще вопрос по теме, мой город "Северск" в яндекс картах обычных показывает, а компонент для жумлы 1.5. видать не обновлен и прорисовки нету, как можно обновить нормальну рабочую на данный момент карту с городом моим?
  • Гость: Все разобрался, не тот плагин ковырял, теперь не могу размер где высота прописывается плагина?