Skip to content
mxDadata
Подсказки DaData и валидация адреса для MiniShop3 в MODX 3
  1. Компоненты
  2. mxDadata
  3. Быстрый старт

Быстрый старт

Как подключить подсказки DaData к оформлению заказа MiniShop3.

Требования

ТребованиеВерсия
MODX Revolution3.x
PHP8.2+
MiniShop33.x
Учётная запись DaDataToken и Secret из кабинета
VueToolsТолько для раздела Extras → mxDadata в панели управления

Шаг 1: Установка пакета

  1. Extras → Installer — найдите mxDadata (ModStore) или установите собранный транспорт
  2. Убедитесь, что установлен MiniShop3
  3. Настройки → Очистить кэш

После установки создаются:

  • ~19 системных настроек (фильтр Настройки → Системные настройки: mxdadata)
  • пункт меню Extras → mxDadata
  • сниппеты mxDadataAddressSuggest, mxDadataPartySuggest, mxDadataForm
  • плагин mxDadata на события OnWebPageInit, msOnBeforeCreateOrder, msOnSubmitOrder
  • чанки оформления (в т.ч. tpl.mxdadata.msOrder с демо-блоком — см. Подключение на сайте)

Проверка админки: откройте Extras → mxDadata. Без VueTools интерфейс менеджера может быть недоступен — сниппеты на сайте при этом работают независимо.

Шаг 2: Ключи DaData

  1. dadata.ru — регистрация / вход
  2. Профиль → информацияAPI Key (Token) и Secret
  3. В MODX: Extras → mxDadata → вкладка API — вставьте Token и Secret
  4. Тест соединения — при успехе сообщение о подключении
  5. Сохранить

Token используется для Suggest. Secret — для Clean (нормализация) и Party (юрлица), в т.ч. в плагине заказа.

Подробнее: Системные настройки.

Шаг 3: Включение компонента

Проверьте Настройки → mxdadata (или вкладка Общие в админке): mxdadata_enabled = «Да». При «Нет» плагин валидации и логика заказа не выполняются.

Шаг 4: Сниппеты в чанке заказа

Подключайте некэшированные вызовы ([[!…]] или Fenom !snippet).

Минимум для адреса:

fenom
{'!mxDadataAddressSuggest' | snippet}
modx
[[!mxDadataAddressSuggest]]

Адрес + юрлицо по ИНН:

fenom
{'!mxDadataAddressSuggest' | snippet}
{'!mxDadataPartySuggest' | snippet}
modx
[[!mxDadataAddressSuggest]]
[[!mxDadataPartySuggest]]

Порядок с msRussianPost: сначала поля адреса и mxDadata (подсказки), затем виджет Почты России — см. Подключение на сайте.

Шаг 5: Настройки MiniShop3 (по желанию)

Extras → mxDadata → вкладка miniShop3 (или системные настройки с префиксом mxdadata_ в области miniShop3):

  • строгая валидация телефона/email
  • обязательный FIAS / индекс
  • JSON маппинга полей DaData → поля адреса MS3

См. Системные настройки → MiniShop3.

Шаг 6: Проверка

  1. Откройте страницу оформления заказа, начните вводить адрес в поле, к которому привязан сниппет (по умолчанию — поля с name="address", address_text_address и др.)
  2. Должны появиться подсказки DaData, а после выбора — заполнение города, индекса, FIAS (если настроено в форме)
  3. Оформите тестовый заказ: при включённой валидации неверный телефон/email может заблокировать создание заказа — см. Интеграция

Отладка в браузере: ?mxdadata_debug=1 в URL или mxdadata_debug_mode = «Да» в настройках — расширенные логи в консоли (см. Интеграция).

Что дальше