Блог API Яндекс.Карт

Новый Конструктор карт

Сегодня мы кардинально обновили Конструктор карт. У него теперь новый дизайн. Это, безусловно, приятное, но не самое главное изменение. Долгое время карты, созданные с помощью Конструктора, нельзя было редактировать. Теперь вы можете делать любые карты для своих сайтов, а потом легко вносить в них правки: убирать, добавлять и редактировать метки, линии и многоугольники, а также описания к ним. 

Конструктор

Чтобы сохранять и редактировать карты обязательно авторизуйтесь в Яндексе или получите новый логин. Учтите, что  потом карту не получится перенести на другой аккаунт. Так что для корпоративных целей лучше не использовать личную учетную запись.

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

Команда API Яндекс.Карт.

93 комментария

а с телефона (с приложения Яндекс.Карты) нельзя же посмотреть свои метки (там нет авторизации)

раньше была (вроде бы..но там нельзя было чтобы те метки которые ставишь на телефоне на картах...чтобы они переносились на другие устройства ...на ПК авторизованным под тем же логином нельзя было увидеть метки... НО Можно было МАРШРУТЫ запоминать и загружать и смотреть потом на компе) - сейчас почему то всего этого нет.. 

сделайте авторизацию в мобильных Яндекс.Картах 

а так в вашем конструкторе не заметил никаких изменений.. 

А Вы не путаете Конструктор карт и сервис Мои карты на maps.yandex.ru? Конструктор карт нужен для того, чтобы делать карту для стороннего сайта.

Увы, мне стало менее удобно пользоваться вашим сервисом.

1. Теперь карта не увеличивается при выборе адреса, а нужно увеличивать вручную.

2. Раньше в ссылке были данные о широте и долготе, теперь их убрали. А мне они нужны. Их конечно можно посмотреть на обычных яндекс.картах, но это не так удобно, лишнее действие.

Первый пункт поняли. Посмотрим. А можете немного пояснить п.2? В какой ссылке были эти данные?

Ну раньше ссылка была днинная (многобукв) и внутри был такой кусок: "Placemark([37.66132, 55.682706]",

мне эти данные нужны в работе.

Сама ссылка выглядела вот так:



http://api.yandex.ru/maps/tools/constructor/index.xml" target="_blank" style="color: #1A3DC1; font: 13px Arial, Helvetica, sans-serif;">Создано с помощью инструментов Яндекс.Карт


А вам сам код в работе нужен? Или только координаты? если только координаты, то удобнее получать их тут http://api.yandex.ru/maps/tools/getlonglat/.

Да, и карта нужна и координаты. Но за ссылку спасибо, это в любом случае удобней, чем на обычных яндекс.картах.

Попробуйте воспользоваться альтернативным коструктором, созданным одним из наших пользователей http://maps.xdan.ru.

Почему отправляете на левые сайты? Почему не даёте возможность сделать карту прямо на портале Яндекса?

вообще ужас. зачем убрали код, где прописаны все координаты? я беру эти координаты и вставляю в модуль Joomla, а теперь только короткая ссылка для отдельной карты.

Если Вам нужны координаты, гораздо удобнее получить их тут http://api.yandex.ru/maps/tools/getlonglat/.

но согласитесь - нарисовать маршрут полигоном и получить координаты единым оформленным текстом гораздо удобнее, чем крестиком пройтись по всем точкам маршрута, скопировать все координаты, проставить у каждой пары координат квадратные скобки и только тогда получить то, что раньше получалось за 10-15 секунд?

Наверняка. Но все-таки Конструктор нужен не для получения координат, а для быстрого и простого создания карты для сайта. Инструмент для людей, которые не умеют или не хотят программировать. И этим людям очень хотелось иметь возможность вносить правки в свою карту. Ради них все и делалось.

Попробуйте воспользоваться альтернативным коструктором, созданным одним из наших пользователей http://maps.xdan.ru.

спасибо. но зачем было доводить до того, что другие люди возвращают функционал, который вы спрятали? может в вашем конструкторе переключатель сделать - простой / экспертный режим? и все будут довольны.

Альтернативный конструктор существовал давно, просто я не сразу о нем вспомнила. 

Что касается «доводить», это был единственный способ дать возможность редактировать созданную карту. Все-таки ваш способ использовать конструктор — не целевой. Конструктор нужен для людей, которые не умеют программировать.

Для вашего кейса мы сейчас делаем пример редактора для песочницы.

Так верните пожалуйста обратно эту возможность... :(

Неужели это такая проблема, тем более что люди просят!

делаю вывод) раньше было лучше %))))

©ШвЕц АрTёМ
28 января 2016, 06:17
а прошлые карты созданные в конструкторе редактировать не получиться? только ново созданные?
Александр Тармолов
28 января 2016, 06:17

да

Максим Басенко
28 января 2016, 06:18

 

Верните старые карты!!!!

1. В старых были координаты, они нужны многим!!!

2. В старых можно было более подробно настраивать прозрачности и цвета линий и полигонов!!!!

Теперь же мы всего этого лишились! Плохо, очень плохо!!!!

 

 

 

 

 

 

 

Сервис для определения координат http://api.yandex.ru/maps/tools/getlonglat/.

Что вы имеете ввиду под «более подробной настройкой прозрачности и цвета»?

Максим Басенко
28 января 2016, 06:18

 

 {strokeColor: "ff0000", strokeWidth: 1, strokeOpacity: 1, fillOpacity: 0.05, fillColor: "ff0000"}

 

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

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

С выходом этой версии я всего этого лишился...((( Это потеря-потерь!!!

 

 

 

 

А есть ли в конструкторе Определение местоположения по IP? Если нет, то реально ли добавить в качестве опции?

Есть ли какие-то ограничения на количество запросов для карт, созданных через конструктор?

Определения местоположения пока нет. Мы планируем расширять функциональность конструктора, но точный сроков пока сказать не могу. 

Под запросами Вы имеете ввиду показы карты пользователям? Если да, то ограничений нет.

Спасибо, решил задачу несколько иначе, через YMapsML. Вышло даже лучше.

 

Под запросами имел ввиду именно то, о чем вы сказали.

доброе время суток.

приведите, пожалуйста, пример, как теперь с помощью javascript добавить на карту Placemark?

 

 

 

Можно, например, в песочнице посмотреть http://api.yandex.ru/maps/jsbox/placemark

спасибо.

 

P.S. присоединяюсь к  

было бы неплохо дать людям выбор - получать код карты в новом формате, или в старом.

Признаюсь, нововведение немного озадачило. Раньше для меня было удобнее, можно было как минимум самому в коде управлять размерами карты (как насчет ширины 100%?). Да и координаты тут же под рукой. У этой версии есть свои плюсы, но если бы вы предоставили возможность сгенерировать на основе текущих карт код, какой был раньше, то было бы замечательно.

Sergey Konstantinov
28 января 2016, 06:18
Управлять размерами вы можете с помощью параметров подключения.
http://api.yandex.ru/maps/doc/constructor/concepts/About.xml

Точно, регулируется. Даже проценты понимает.

подорожній
28 января 2016, 06:18

Вот вы конструктор обновили - это хорошо, давно этого ждали, спасибо (+1)
А вот приложение Карта друзей в официальном клубе Яндекса уже который год использует старый АПИ движок. (-1)
Разве так сложно перейти с старого на новый АПИ?

Добрый день. Новый код для вставки не работает. После вставки его в body ничего не происходит. 

Какая CMS? Браузер?

CMS самописная какая-то. Браузеры: Мозила, Хром, ИЕ. Раньше код для вставки работал отлично.

Если вставить java скрипт с функцией alert( ) ; рядом со скриптом карт, то алерт работает, а вот карты нет... Дело не в CMS.

Есть какое-то решение этой проблемы, может можно получить код карты в старом формате? С проблемой очень нужно разобраться побыстрее.

Емелин Алексей
28 января 2016, 06:18

Здравствуйте. А можно посмотреть живую страницу, на которой не работает карта? Или хотя бы узнать, что пишется в консоли браузера (в Хроме нажать ctrl + shift + J, появится панель, в которой следует переключиться на вкладку с названием console)?

Могу дать ссылку на страницу Контакты

В консоле Failed to load resource: the server responded with a status of 404 (Not Found)

 

Добрый день. Такая же проблема. Сайт на HTML, после вставки кода, карта не отображается. В консоли ошибка:

 Failed to load resourcefile://api-maps.yandex.ru/services/constructor/1.0/js/?sid=TfeOiRe5NKguoJ6Rf7OnB9siQaD6DSvv&width=300&height=350

:-(

Sergey Konstantinov
28 января 2016, 06:18
Вы, видимо, пытаетесь вставить код конструктора в локальный файл.
В этом случае вам нужно в строке подключения в атрибуте href указать нужный протокол - http:// или https://
Спасибо, всё работает. Вы очень помогли.
Sergey Konstantinov
28 января 2016, 06:18
Вы, видимо, пытаетесь вставить код конструктора в локальный файл.
В этом случае вам нужно в строке подключения в атрибуте href указать нужный протокол - http:// или https://

Спасибо. Была такая мысль, не успел проверить )

zmei.andreikobrazmei
28 января 2016, 06:18

 

Здравствуйте. Я создал 100 меток (разные города по всей России) с помощью конструктора. Как мне нужно изменять местоположение: координаты и зум. Как это сделать не ясно.

 

раньше было так и как у вас в документации:

http://api.yandex.ru/maps/doc/jsapi/2.x/examples/mappanto.html

var myMap = new ymaps.Map('map', {

                    center: [55.753, 37.609], // Москва

                    zoom: 9

                }),

                destinations = {

                    'Москва': [55.753559, 37.609218],

                    'Санкт-Петербург': [59.93853, 30.313497],

                    'Екатеринбург': [56.829748, 60.617435],

                    'Одесса': [46.466444, 30.7058]

                }

 

как теперь получить var myMap, пробовал брать id. но смысл его повторно инициализировать.

жду ответ! 

zmei.andreikobrazmei
28 января 2016, 06:18

немного сумбурно написал. в общем, нужно менять зум, координаты в зависимости от города: Москва, Казань и т.д. спс.

Алексей Корепов
28 января 2016, 06:18

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

И ещё было бы очень классно если можно было бы этот же код скопировать в конструктор со страницы, поправить и скопировать обратно.

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

Править код и смотреть, что получилось после правок гораздо удобнее в песочнице http://api.yandex.ru/maps/jsbox/. Как раз для продвинутых :-)

Алексей Корепов
28 января 2016, 06:18

Да, в песочнице удобнее, но там не работает код который генерится в Конструкторе (если скопировать оттуда и вставить), только если вручную его править под песочницу, но тогда уж проще заново в песочнице сделать то что надо ;)

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

Мы сейчас готовим новый пример для песочницы, который, кажется, закроет этот вопрос, но надо чуть-чуть подождать.

Раньше для верстальщиков был стабильный код под CTRL+C, что теперь вы сделали с конструктором? 
Ваша песочница не генерирует даже этот код.

Вот что выдает констуктор теперь: 
  

Ранее же был уже готовый фрагмент для вставки:




Где вот теперь генерировать этот код? Ну строку скрипта вы оставили, а остальное? 

 

ОК песочница отображает всё как надо: 

   

    Примеры. Размещение карты на странице.

   

   

   


Но стоит добавить этот код на страницу на локальном диске и она даже не отображается. Помогите с решением.

А в конструкторе можно использовать свое изображение иконки метки? никак не удаётся подключить

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

да, просто не хотелось ради одной картинки отказываться от конструктора и подключать напрямую - через интерфейс конструктора вносить обновления и добавления было быстрей и удобней. Но раз нет - будем делать полноценную :)
то есть имею ввиду - этот код ведь нельзя подключить к карте, созданной конструктором? Или можно?

Нет, нельзя. Это совсем разные «коды» :-)

Пожалуйста, верните возможность посмотреть код карты "как раньше" (хотя бы координаты нарисованных полигонов). Многие использовали конструктор, чтобы рисовать границы объектов (и прочее), а потом копировать готовые координаты.

И ещё вопрос: заказчик прислал границы посёлка, нарисованные в новом конструкторе. Чтобы это занести в базу сайта, придётся вручную каждую точку вводить, или есть возможность увидеть координаты? (хотя бы при помощи firegbug или чего-то подобного?)

Предлагаю возможное решение: при клике по полигону во всплывающем окне (или на вкладке во всплывающем окне) показывать координаты всех входящих точек (если не будете возвращать старый код для вставки).

Попробуйте воспользоваться альтернативным коструктором, созданным одним из наших пользователей http://maps.xdan.ru.

Спасибо, отличный вариант.

Верните предыдущую версию!

 

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

Теперь эта возможность пропала!

Попробуйте воспользоваться альтернативным коструктором, созданным одним из наших пользователей http://maps.xdan.ru.

Он некорректно работает!

Возвращает кординаты в перевернутом формате.

Здравствуйте, Уважаемая команда разработчиков!

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

В текущей версии при попытке загрузки карт аяксом в консоль выводится ошибка:

"TypeError: y.parentNode is null"

 

Скорее всего проблема тут "e = document.getElementsByTagName("script")", я подозреваю, что скрипт не пожет найти только что загруженный тэг, в моем случае это:

 

Пожалуйста, разберитесь.

Sergey Konstantinov
28 января 2016, 06:18

Дайте ссылку на страницу, пожалуйста.

Тут оба примера: http://timra.ru/maps/

Еще я заметил, что при каждой подгрузке контента с новым кодом конструктора в каждый раз добавляются:
<script charset="utf-8" src="//api-maps.yandex.ru/2.0/...."> и

Sergey Konstantinov
28 января 2016, 06:18

Попробуйте указать элемент для карты с помощью параметра id:

http://api.yandex.ru/maps/doc/constructor/concepts/About.xml

Спасибо, карта загрузилась, однако, проблема с многоразовым подключением //api-maps.yandex.ru/2.0 остается актуальной.

Sergey Konstantinov
28 января 2016, 06:18

А в чем вы видите проблему?

Я не уверен, хорошо ли это, но при каждой загрузке получается это: http://clip2net.com/s/50FD2x

Sergey Konstantinov
28 января 2016, 06:18

На скрине - логи обращений к нашим счётчикам, а не загрузка АПИ.

Ок, я рад, что это не проблема. Спасибо за поддержку и разъяснения.

Не работает конструктор сейчас ни в одном браузере. Пустое поле выводит вместо карты.

Шайзат Паукку
28 января 2016, 06:18

а как быть с такой ошибкой?

 

Uncaught TypeError: Cannot call method 'insertBefore' of nullapi-maps.yandex.ru/services/constructor/1.0/js/?sid=7byCUUSQ4LMf0CToOjKrGil0D1bb6gyN&width=324&height=280&_=1378912201628:1
Sergey Konstantinov
28 января 2016, 06:18
Покажите страницу.
Sergey Konstantinov
28 января 2016, 06:18
Подозреваю, что вы пытаетесь вставить карту в , что, конечно, невозможно.
Попробуйте поспользоваться параметром id и указать карте контейнер на странице.
http://api.yandex.ru/maps/doc/constructor/concepts/About.xml
Шайзат Паукку
28 января 2016, 06:18

красота! спасибо)

Почему, когда вставляю код из конструктора на своем я.блоге, предварительно отображается карта, а при публикации пустота? 

Масса таких вопросов в поиске, но ответа, увы, нет....

Пишут про пробелы, пробовал, убирал, эффекта нет...

Я уточню. Спасибо за сообщение.

Екатерина, очень нужна подсказка.

 

Я в этом сообщении вставил код, выданный конструктором, но он не отображается. Почему? ()

 

 

Дело в том, что к сожалению, на ya.ru, как и на многих других блогосервисах (например, жж), в сообщения и посты запрещено добавлять скрипты :-( Вы можете добавить только статичную карту-картинку.
Ольга Стогова
28 января 2016, 06:18

Здравствуйте! А у меня тут с ним проблемка :(

Создаю карту на сайт через конструктор карт, задаю размер контейнера двигая стрелочками (а input нельзя? :( ), после задания нужного мне размера, это почему то не влияет на размер контейнера карты на конечном сайте, т.е. на сайте, куда я вставляю карту она отображается 600*450, при настроенных 320*300, при задании размеров  ymaps через css

(ошибок в косоли нет)

скажите, пожалуйста, как правильно задать размер карты так, чтобы она была нужного мне размера?

идеально, если можно задать размеры нефиксированно, карта будет находится в контейнере на сайте с адаптивной версткой, контейнер меняет значения от 450 до 300

Sergey Konstantinov
28 января 2016, 06:18
Воспользуйтесь параметром id конструктора:
http://api.yandex.ru/maps/doc/constructor/concepts/About.xml
Ольга Стогова
28 января 2016, 06:18

ааа, да просто надо было вообще во вставке не указывать width&height))

Насколько я понял, тема с полным доступом к коду в редакторе больше не актуальна для разработчиков? Вы из нормального редактора сделали обрубок. Задачу, которую можно было решить за пол часа со старым редактором, я не решил с новым, потратив целый день и изучая огромное количество текстовой информации, которая, для меня, в целом, безполезна.

А как сделать кнопку "Мое местоположение" для такой во встроенной карты? Или  ссылку "перейти на большую карту". Чтобы юзер там нашел себя. 

Olga.Vasilevna.Kuznetsova
16 февраля 2016, 17:45
Добрый день!
Ничего приятного! Как распечатать документ?
Здравствуйте. Я создал карту(точнее метки на карте) с помощью "Конструктора карт". Я собираюсь использовать карты на телефоне(с мобильного браузера). При открытии карты по ссылке внизу на четверть экрана выходит название карты и при закрытии названия, пропадают все метки и остаётся только "голая" карта. Исправьте пожалуйста это. Спасибо.
можно ли после создания интерактивной карты в конструкторе отключить multitouch и drag? статический по допустимым размерам к нам на сайт не подходит, а писать скрипт через api нам оч неудобно, как надо искать центр карты нестандартного размера (неквадрат)