
- MODX 3
- PHP 8.2


Namespace: yandexmapslocator. В БД ключи с префиксом yandexmapslocator_.
Система → Настройки системы → фильтр yandexmapslocator.
Все ключи ставит Free. Ключи api_* начинают работать после Pro. Лимит запросов из той же группы режет и Free search.php.
yandexmapslocator_main) | Ключ | Тип | По умолчанию | Описание |
|---|---|---|---|
yandexmapslocator_api_key | text | (пусто) | Ключ JS API и Геокодера |
yandexmapslocator_default_zoom | number | 10 | Масштаб карты |
yandexmapslocator_default_latitude | text | 55.751244 | Центр, широта |
yandexmapslocator_default_longitude | text | 37.618423 | Центр, долгота |
yandexmapslocator_cluster | boolean | Да | Кластеризация маркеров |
yandexmapslocator_default_radius | number | 50 | Радиус поиска, км, если у сниппета radius=0. Режет выдачу при любом гео-origin: координаты из latitude / longitude, геолокация или address после геокода. Описание настройки в пакете упоминает только sortby=distance, но код применяет радиус независимо от сортировки |
yandexmapslocator_distance_unit | list | km | Единица расстояния: km или m |
yandexmapslocator_default_balloon_image | text | (пусто) | Запасная картинка балуна |
yandexmapslocator_marker_icon_size | text | 32,32 | Размер своей иконки маркера, px |
yandexmapslocator_default_context | text | web | Запасной контекст. Также контекст CSV-экспорта Pro |
yandexmapslocator_timezone | text | Europe/Moscow | IANA-таймзона сети (запасной вариант), если у точки нет TV yandexmaps_timezone. Нужна для Pro working_now / is_open_now |
yandexmapslocator_allowed_contexts | text | (пусто) | Белый список context key через запятую. Пусто: любой существующий |
yandexmapslocator_tvs) | Ключ | По умолчанию |
|---|---|
yandexmapslocator_tv_address | yandexmaps_address |
yandexmapslocator_tv_latitude | yandexmaps_latitude |
yandexmapslocator_tv_longitude | yandexmaps_longitude |
yandexmapslocator_tv_phone | yandexmaps_phone |
yandexmapslocator_tv_email | yandexmaps_email |
yandexmapslocator_tv_working_hours | yandexmaps_working_hours |
yandexmapslocator_tv_category | yandexmaps_category |
yandexmapslocator_tv_balloon_image | yandexmaps_balloon_image |
yandexmapslocator_tv_marker_icon | yandexmaps_marker_icon |
Сменить значение настройки, если TV на сайте уже названы иначе. Список TV: Точки и TV.
Pro читает ключ yandexmapslocator_tv_timezone (имя TV пояса). В пакете Free ключа нет: задайте вручную или оставьте имя yandexmaps_timezone.
yandexmapslocator_api) | Ключ | Тип | По умолчанию | Описание |
|---|---|---|---|
yandexmapslocator_api_enabled | boolean | Да | Выключатель REST Pro. Нет → 503. Локатор на странице уходит на search.php |
yandexmapslocator_api_max_limit | number | 100 | Макс. limit в REST |
yandexmapslocator_api_max_offset | number | 10000 | Макс. offset |
yandexmapslocator_api_max_parents | number | 20 | Макс. число parents в запросе |
yandexmapslocator_api_geocode_rate_limit | number | 30 | Бакет geocode: REST geocode и поиск по address в REST и в search.php |
yandexmapslocator_api_list_rate_limit | number | 120 | Бакет list: REST locations и каждый запрос search.php |
yandexmapslocator_api_cors_origins | text | (пусто) | Origins через запятую. На рабочем сайте не * |
yandexmapslocator_api_token | text | (пусто) | Bearer для серверных клиентов. В HTML страницы не попадает. Если задан, локатор на сайте ходит в search.php |
yandexmapslocator_api_resource_tvs | text | (пусто) | Разрешённые TV в include=tv |
yandexmapslocator_api_allowed_parents | text | (пусто) | Белый список parent ID. Пусто: любой |
yandexmapslocator_api_trust_proxy | boolean | Нет | Доверять X-Forwarded-For для лимита запросов |
С 127.0.0.1, ::1 и системной debug лимит запросов не режет.
Значение лимита общее, но счётчики разные. В ключ счётчика входит имя бакета (rate/{бакет}/{ip}/{минута}), поэтому лимит задаётся отдельно для REST и отдельно для search.php: это два независимых счётчика, и запрос к одному не тратит лимит другого. Имя бакета видно в ключе кеша:
| Бакет | Кто тратит | Значение берётся из |
|---|---|---|
locations | REST locations | yandexmapslocator_api_list_rate_limit |
search | search.php Free | yandexmapslocator_api_list_rate_limit |
geocode | REST geocode и любой запрос с address | yandexmapslocator_api_geocode_rate_limit |
Поэтому запрос к search.php с address съедает две квоты: search и geocode.
Подробнее: Безопасность API.
У Pro нет своих настроек в System Settings. Берите ключи Free выше. TV, которые создаёт resolver Pro: yandexmaps_timezone, ms3_product_id, ms3_product_ids, yandexmaps_amenities, yandexmaps_brand. Список: Точки и TV.