Как вставить виджет карты на любой сайт

Соберите код один раз: введите адрес в конструкторе карты, перетащите метку точно на ваш вход и скопируйте одну строку iframe — она работает на любой платформе, где есть блок HTML или встраивания. В WordPress можно вместо этого установить плагин и использовать шорткод. В обоих случаях не нужны ни API-ключ, ни платёжный аккаунт, ни куки. Метка никогда не сместится: во встраиваемый код записаны ваши финальные координаты, а не повторное геокодирование адреса.

С разрешения · Конфиденциально · Работает в Chrome, Safari, Firefox, Edge

Начните в конструкторе (это вся основная работа)

Всё начинается в конструкторе карты. Геокодирование выполняется один раз, там — в скопированный код записаны фиксированные координаты, поэтому сбой геокодера или «нормализация адреса» уже не сдвинут вашу метку. Введите адрес, дождитесь появления метки и перетащите её на настоящий вход перед копированием: эти десять секунд отличают «нужную улицу» от «нужной двери».

Хотите сначала посмотреть готовую настройку с несколькими филиалами? Откройте демо конструктора — в нём загружается пример компании с тремя филиалами: адреса, цветные нумерованные метки и панель мест прямо в предпросмотре, всё можно потрогать.

WordPress: шорткод плагина или чистый iframe?

Оба пути дают одинаковый виджет — выбирайте по вкусу.

Через плагин (рекомендуем): скачайте whatismylocation-widget.zip → wp-admin ▸ Плагины ▸ Добавить новый ▸ Загрузить плагин → Активировать. Затем добавьте блок Шорткод:

[whatismylocation_map lat="48.858400" lng="2.294500" name="Acme SARL" address="Champ de Mars, Paris"]

Атрибуты повторяют параметры конструктора: theme, marker, zoom, height, directions, а для филиалов — pins="lat,lng,Label~Address|…" вместе с panel= и motion= (см. таблицу ниже). Раздел WordPress в конструкторе сам собирает полный шорткод — печатать ничего не нужно.

Без плагина: вставьте iframe из конструктора в блок Произвольный HTML. Виджет тот же, обновлять плагин не нужно; минус — более длинный код в содержимом и невозможность потом править атрибуты.

Squarespace, Shopify, Notion — и все остальные

Вне WordPress обычно хватает одной вставки: добавьте элемент HTML или встраивания вашей платформы (Wix Embed HTML, блок Code в Squarespace, Embed в Webflow) и вставьте туда iframe. Одно отличие делает виджет карты проще, чем виджет местоположения: ему не нужен атрибут allow="geolocation", ведь он ничего не спрашивает у посетителей — значит, нет и хрупкой детали, которую надо сохранить, когда конструктор страниц переписывает ваш HTML.

Squarespace: добавьте блок Code и вставьте код. Одна деталь, о которой лучше знать заранее: блоки Code доступны только на тарифе Business и выше — на тарифе Personal блок покажет ваш код обычным текстом вместо готового виджета.

Shopify заслуживает большего, чем простая вставка: у нас есть готовая секция темы — один файл в теме даёт нативную панель настроек, где филиалы становятся блоками с перетаскиванием, без приложения и без API-ключа.

Notion и Google Sites встраивают по URL, а не по HTML. Код iframe они вообще не примут — вместо этого нажмите Copy widget URL в конструкторе и вставьте ссылку в блок /embed в Notion или в Embed ▸ By URL в Google Sites. Виджет — это полноценная отдельная страница, поэтому в обоих случаях он отображается корректно.

Salesforce Experience Cloud (публичные сайты сообществ): вставьте iframe в компонент HTML Editor — затем попросите администратора добавить whatismylocation.ai в Setup ▸ Trusted URLs с директивой CSP frame-src, иначе Salesforce молча заблокирует фрейм. Те, кто работает с кодом, могут обернуть тот же URL в Lightning Web Component примерно на 10 строк:

<!-- wimlMap.html -->
<template>
  <iframe src={src} width="100%" height="340"
          loading="lazy" title="Map"></iframe>
</template>

// wimlMap.js
import { LightningElement } from 'lwc';
export default class WimlMap extends LightningElement {
  src = 'https://whatismylocation.ai/widget/map?lat=48.858400&lng=2.294500&name=Acme';
}

Несколько филиалов: панель мест

В один виджет помещается до 10 точек. В режиме «Расширенный» в конструкторе поставьте каждую метку, задайте ей название и адрес и нажмите «Добавить место». Посетители получают панель мест — аккордеон рядом с картой на компьютере и ленту карточек с прокруткой на телефоне — с нумерованными метками. Выбор филиала перелетает карту к нему и показывает его адрес с собственной ссылкой «Проложить маршрут».

Справочник параметров

ПараметрЗначенияПримечания
lat / lngдесятичные градусыОбязательны для одной точки (конструктор заполняет их сам).
pinslat,lng,Label~Address|…До 10 филиалов; заменяет lat/lng. Названия ≤80 символов, адреса ≤120; внутри не должно быть | и ~.
nameтекст ≤80Жирный заголовок карточки или панели — обычно название вашей компании.
addressдо 3 строкАдрес на карточке (одна точка; у филиалов используется Label~Address). В конструкторе есть три поля для строк; в шорткоде WordPress строки разделяет |.
name_style / address_stylen · b · i · biЖирный или курсив для каждой строки — заголовок по умолчанию жирный, выбранный стиль заменяет это значение. В конструкторе это чипы B/I в расширенном режиме.
mapsgoogle · apple · google,appleНебольшие ссылки-иконки «Открыть в Google Maps» и «Открыть в Apple Maps» с подсказками при наведении — на карточке и у каждого филиала в панели. Нет значения — нет иконок.
zoom2–19, по умолчанию 16С филиалами становится максимальным после автоподбора.
themelight · dark · goldenПод стиль вашего сайта.
markeremerald · red · amber · indigo · slateЦвет метки; по умолчанию классический синий.
panelauto · side · bottom · noneРаскладка панели мест (только при нескольких метках).
motionsmooth · fade · lively · noneАнимация переключения филиалов; при включённом уменьшении движения переход всегда мгновенный.
openyes · noРазвёрнут ли первый филиал при загрузке (по умолчанию yes).
directionsyes · noКнопки «Проложить маршрут» — в режиме нескольких меток у каждого филиала своя.
iframe height220–800 px340 подходит для одной метки; от 400 панель смотрится свободнее.
attributionyes · noНеобязательная подпись «Powered by» на вашей странице — в плагине выключена по умолчанию.

Устранение проблем в WordPress

Шорткод виден на странице как обычный текст. Этот блок не обрабатывает шорткоды. В блочном редакторе используйте блок Шорткод (не блок кода и не форматированный текст); в Elementor — виджет Shortcode, в Divi — модуль Code. В классическом редакторе введите его во вкладке «Визуально» как обычный текст.

Не появляется вообще ничего. Откройте исходный код страницы и найдите whatismylocation. HTML-комментарий о нехватке lat/lng означает, что координат нет или они неверные — скопируйте полный шорткод из конструктора, а не набирайте атрибуты вручную.

iframe пропадает после сохранения (вариант без плагина). WordPress вырезает iframe у ролей без права unfiltered_html — в мультисайте по умолчанию это касается и администраторов. Так же поступают некоторые плагины безопасности. Чистое решение — шорткод плагина: ему не нужно, чтобы вашей роли разрешали сохранять чистые iframe.

Карта серая, тайлы не загружаются. Тайлы приходят с tile.openstreetmap.org; очень агрессивный блокировщик рекламы или корпоративная сеть могут их блокировать (карточка поверх карты при этом отображается). Проверьте в другой сети или на телефоне через мобильный интернет.

Нет панели мест. Панель появляется начиная с 2 меток — для одной точки показывается классическая карточка поверх карты. Ещё проверьте, что не задано panel="none".

Анимация переключения не проигрывается. Почти всегда дело в системной настройке «уменьшить движение» у посетителя или у вас самих — виджет намеренно её учитывает и переключается мгновенно. Это не ошибка, остальные посетители по-прежнему видят выбранный вами вариант.

Изменения не видны. Плагин кеширования (или кеш хостинга) отдаёт старую страницу. Очистите кеш страницы после правки атрибутов шорткода — самому виджету кешировать нечего.

Шаг за шагом

  1. Откройте конструктор map-embed, введите свой адрес и нажмите Find on map (либо вставьте координаты напрямую, например 48.8584, 2.2945).
  2. Перетащите метку (или щёлкните по карте), пока она не окажется точно на входе — геокодеры обычно ставят точку в центр улицы, а не у вашей двери. Эти итоговые координаты сохранятся навсегда.
  3. Укажите название организации и выберите тему оформления. Есть филиалы? Переключите конструктор в режим Advanced и нажимайте Add location для каждого адреса — название плюс адрес.
  4. Скопируйте код для встраивания — либо, для WordPress, готовый шорткод с той же страницы — и вставьте его на свою страницу.
  5. Опубликуйте и проверьте страницу: карта, метка и кнопка построения маршрута (Get-directions) должны отобразиться сразу же. Не нужны ни ключ, ни аккаунт, ни какая-либо настройка на сервере.
как вставить карту на сайт карта OpenStreetMap на сайт бесплатно

Частые вопросы

Нужен ли API-ключ или платёжный аккаунт?
Нет. Виджет карты работает без API-ключа, без платёжного аккаунта и без куки — достаточно вставить одну строку iframe или шорткод плагина.
Сколько филиалов помещается в один виджет?
До 10 адресов. Начиная с двух меток появляется панель мест: аккордеон рядом с картой на компьютере и лента карточек на телефоне.

Смотреть на английском: How to Embed a Map Widget on Any Site · Русский