Как добавить несколько точек на одну карту на Яндексе, чтобы они не создавали новую карту каждый раз?
Для добавления нескольких меток на карту Яндекс в WordPress, можно воспользоваться плагином "Yandex Maps" или "Yandex Maps Shortcode". 1. Установите и активируйте плагин "Yandex Maps" через раздел Плагины -> Установить плагины в административной панели WordPress. 2. Создайте новую страницу или пост и используйте шорткоды плагина для добавления меток на карту. Например: [yandexmaps lat="55.755773" lon="37.617761" zoom="13" type="yandex#map" address="Москва, Красная площадь" description="Красная площадь"]. 3. Повторите этот шаг для каждой метки, которую необходимо добавить на карту. Если же вы хотите добавить несколько точек на одну карту на Яндексе без создания новой карты каждый раз, можно воспользоваться JavaScript API Яндекс. Ниже приведен пример кода для добавления нескольких меток на карту: ```html <div id="map" style="width: 600px; height: 400px;"></div> <script src="https://api-maps.yandex.ru/2.1/?apikey=YOUR_API_KEY&lang=ru_RU"></script> <script> ymaps.ready(init); function init() { var map = new ymaps.Map("map", { center: [55.755773, 37.617761], zoom: 10 }); var placemarks = [ {coordinates: [55.755773, 37.617761], content: 'Москва, Красная площадь'}, {coordinates: [59.934280, 30.335098], content: 'Санкт-Петербург, Эрмитаж'} ]; placemarks.forEach(function(placemark) { var placemarkObject = new ymaps.Placemark(placemark.coordinates, { hintContent: placemark.content }); map.geoObjects.add(placemarkObject); }); } </script> ``` Не забудьте заменить YOUR_API_KEY на ваш ключ API Яндекс. После этого скопируйте и вставьте этот код на страницу или пост в WordPress.
Так, а зачем вы создаете второй раз карту?!
ymaps.ready(function () { let ymap = document.querySelector('.contacts__map'); let coordinates = ymap.getAttribute('data-coordinates'); let address = ymap.getAttribute('data-address'); let myMap = new ymaps.Map('ymap', { center: [53.2584970, 50.2369070], zoom: 16 }, { searchControlProvider: 'yandex#search' }); let myPlacemark = new ymaps.Placemark(myMap.getCenter(), { balloonContent: address }, { iconLayout: 'default#image', iconImageHref: WPJS.siteUrl + '/assets/img/common/marker.svg', iconImageSize: [40, 63.2], iconImageOffset: [-50, -38] }); let myPlacemark2 = new ymaps.Placemark2(myMap.getCenter(), { balloonContent: address }, { iconLayout: 'default#image', iconImageHref: WPJS.siteUrl + '/assets/img/common/marker.svg', iconImageSize: [40, 63.2], iconImageOffset: [-50, -38] }); myMap.geoObjects.add(myPlacemark); myMap.geoObjects.add(myPlacemark2); myMap.behaviors.disable('scrollZoom'); });