AWZ: Решение конфликтов Яндекс карт
Описание
Как избавиться от ошибок Яндекс.Карт на сайте: модуль, который чинит конфликты скриптов
Когда на одном сайте работает несколько модулей, подключающих Яндекс.Карты — например, службы доставки или виджеты с разными версиями API, — рано или поздно возникает конфликт. Скрипты накладываются друг на друга, карта перестаёт загружаться, а в консоли браузера появляются ошибки. Вместо того чтобы разбираться в исходниках каждого модуля и править код вручную, можно установить одно решение — модуль «AWZ: Решение конфликтов Яндекс карт». Он автоматически приводит все подключения к единому стандарту без вмешательства разработчика.
Суть работы проста: модуль встраивается в процесс генерации страницы и на лету находит все ссылки на api-maps.yandex.ru. Вместо десятка разных версий он оставляет только одну — ту, которую вы задали в настройках. Это не только убирает ошибки, но и ускоряет загрузку страницы, так как браузеру не приходится загружать несколько копий одной и той же библиотеки.
Гибкая настройка под любые сценарии: мультисайты, исключения и enterprise
Модуль не работает «вслепую» на всех страницах. Вы можете тонко управлять его поведением. Если у вас мультисайтовая архитектура, настройки сохраняются отдельно для каждого сайта. Это значит, что на одном домене модуль может быть активен, а на другом — отключён, без лишних танцев с бубном.
Для сложных проектов предусмотрены исключения. Вы можете отключить замену скриптов на страницах с определёнными GET-параметрами (например, при предпросмотре товара или в режиме редактирования). Или задать регулярные выражения, чтобы модуль не трогал определённые разделы каталога. Если нужно, наоборот, включить обработку только на конкретных страницах — для этого есть отдельное поле с белым списком URL. Всё настраивается в интерфейсе администратора, без правки кода сайта.
Отдельно стоит упомянуть поддержку enterprise-версии Яндекс.Карт. Если у вас есть ключ для корпоративного тарифа, модуль автоматически переключит подключение на enterprise.api-maps.yandex.ru. Вам не придётся вручную менять URL в каждом модуле.
Автоматический поиск ключей: ничего лишнего не нужно заполнять
Одна из самых частых проблем при настройке карт — это путаница с API-ключами. Каждый модуль требует свой ключ, и если они не совпадают, карта не работает. Модуль «AWZ: Решение конфликтов Яндекс карт» решает эту проблему автоматически. Он проверяет, установлены ли у вас модули awz.ydelivery, awz.belpost, awz.europost или fileman. Если да — он сам подхватывает API-ключи из их настроек и подставляет их в единый URL.
Вам не нужно дублировать данные или синхронизировать ключи вручную. Достаточно один раз настроить модули доставки, а всё остальное решение сделает само. Если ключи не найдены, вы можете задать URL вручную в поле «URL путь к библиотеке ymaps». Но в большинстве случаев автоматика справляется без вашего участия.
Принцип работы: как модуль чинит код без потери производительности
Модуль подключается к системному событию OnEndBufferContent — это момент, когда страница уже полностью сформирована, но ещё не отправлена браузеру. В этот момент решение проверяет, не является ли запрос админкой, POST-запросом или AJAX-вызовом. Если это обычный пользовательский запрос — начинается обработка.
Сначала модуль получает настройки для текущего сайта, проверяет исключения по GET-параметрам и регулярным выражениям. Затем он сканирует HTML-код и находит все теги, подключающие Яндекс.Карты. Первое подключение заменяется на ваш единый URL (с меткой #awzfixymap для внутренней очистки), а все остальные — удаляются. В конце метка убирается, и страница отдаётся пользователю уже чистой, без дублирующихся скриптов. Всё происходит за доли секунды и не влияет на скорость работы сайта.
Простая установка и понятные настройки в административной панели
Установка модуля стандартна для 1С-Битрикс: он регистрируется в системе и автоматически подключает свой обработчик. После установки вы заходите в раздел «Настройки модулей» → «AWZ: Решение конфликтов Яндекс карт» и видите понятную форму. Никаких файлов конфигурации, никаких правок .php-файлов.
Настройки разделены на логические блоки: включение/отключение модуля, URL библиотеки, списки исключений (по GET-параметрам и регулярным выражениям), а также белый список для включения. В отдельной вкладке доступна настройка прав доступа — вы можете разрешить управление модулем только определённым группам пользователей. Это особенно удобно в агентствах и крупных проектах, где доступ к настройкам нужно ограничить.
Модуль решает конкретную проблему — конфликты Яндекс.Карт — и делает это без лишних усложнений. Если на вашем сайте несколько модулей подключают карты с разными ключами и версиями, это решение сэкономит вам часы отладки и нервы пользователей, которые видят пустое место вместо карты.
Часто задаваемые вопросы
Характеристики
| Версия | 1.0.3 |
| Добавлен | 11.03.2026 |
| Установок | Менее 50 раз |
| Код | awz.ymapfix |
| Адаптивный | Да |
| Composite | Да |