Доброе время суток.
Назрела необходимость на D7 использовать Яндекс карты. Нужно - автоматическое добавление к ноде карты, после указания в поле ноды координат, а в идеале вместо координат использование заранее подготовленного словаря с названиями мест.
Готовых решений я так и не нашел. Кто нибудь сталкивался? Что бы посоветовали?
Или писать все практически с нуля ручками придется?(
Комментарии
там писать то, десяток строчек кода
Да я что-то сижу и туплю - не знаю даже с чего начать%) Сделал напрямую вставку координат из поля, в шаблоне, работает конечно, но имхо это какое-то хреновое решение)
var geocoder = new YMaps.Geocoder("Россия, Москва, ул. Тверская, д. 43");
YMaps.Events.observe(geocoder, geocoder.Events.Load, function (geocoder) {
var geoCoords = geocoder.get(0).getGeoPoint(),
geoPlacemark = new YMaps.Placemark(geoCoords);
map.addOverlay(geoPlacemark);
});
Можно делать так.
У меня есть готовый модуль под d7 с поддержкой views
demetr Ну это обычный апи яндекскарт, примерно так и реализованно.
Сделал поле со списком, при сохранении ноды название меняется на заданные координаты (Адрес не подходит ибо он не всегда есть). Пока пойдет, со временем доработаю)
yusoft То что мне нужно не до такой степени критично и сложно, чтобы это покупать))
а кто говорил о покупке? если модуль нужен - выложу
UPD: модуль в приаттаченном архиве, в файле readme.txt его краткое описание. Это был мой первый опыт работы с D7, так сказать "проба пера", так что сильно не пинайте. Если будут вопросы или пожелания по доработке - пишите.
Еще не поздно по вопросам?
На D-7.9. косячит:
Notice: Trying to get property of non-object в функции yandex_maps_plugin_style_ymap->render() (строка 43 в файле /modules/yandex_maps_d7_1/yandex_maps_plugin_style_ymap.inc).
Notice: Trying to get property of non-object в функции yandex_maps_plugin_style_ymap->render() (строка 44 в файле /modules/yandex_maps_d7_1/yandex_maps_plugin_style_ymap.inc).
Notice: Trying to get property of non-object в функции yandex_maps_plugin_style_ymap->render() (строка 45 в файле /modules/yandex_maps_d7_1/yandex_maps_plugin_style_ymap.inc).
Это сразу после сохранения вьюхи и на странице вьюхи. При этом, отображается дефолтное местоположение (где в Турции).
И, чтобы отображать карту с меткой непосредственно в ноде, я так понял, нужно вьюсом и аргументами работать?
Не поздно, но я сейчас занят и поэтому времени на доработку модуля остается очень мало.
Проверю на днях.
Да, сделайте для этого блок с дефолтным аргументом - nid требуемой ноды.
PS: Есть доработанная и сильно "продвинутая" версия этого модуля под D6 (поддержка геокодера, static maps для мобильных устройств, выбор значка для метки, "визуальная" установка метки прямо на карту и многое другое).
Если есть необходимость, могу портировать эти функции и в версию для D7. Пишите в ЛС - договоримся
М.б. есть тогда смысл поконкурировать в коллективном заказе (только без драк) с этим, если функций будет действительно больше. Да и по цене, видимо, должно получится демократичнее...
а мне и под д6 интересно.
+
Интересует эта версия. Её можно как-то получить?
Напишите в ЛС что именно вам нужно - обсудим.