Достаточно часто у владельцев сайтов возникает необходимость разместить на сайте модуль карты, где отображалось бы большое количество объектов. Например, это будут метки выполненных ранее работ. При клике по метке посетитель сайта получает возможность перейти на страницу выполненной работы и подробно ознакомиться с текстовой, фото и видео информацией. Данную функцию выполняет модуль «Наши работы на карте» для Joomla.
Модуль совместим с Joomla 3 и выше и продается в интернет-магазине по ссылке ниже:
Купить модуль «Наши работы на карте»
Ссылка на демонстрационную страницу модуля:
https://modules.sitogon.ru/index.php/ob-ekty-na-karte
Модуль устанавливается стандартно и после установки его можно обнаружить в менеджере модулей административной панели Joomla. Построение карты и меток осуществляется с помощью сервиса Яндекс Карты.
Принцип работы модуля
В настройках модуля указываются категории материалов Joomla. При открытии модуля на сайте происходит сканирование материалов из указанных категорий и их заголовки используются, как адреса.
Ниже на рисунке показаны материалы из категории «Объекты на карте», которая была создана на демонстрационном сайте для демонстрации работы модуля.
На основе адресов формируются метки на карте. Формирование происходит с помощью Яндекс JavaScript API и HTTP Геокодера. Поэтому в личном кабинете разработчика, на сайте Яндекса необходимо получить ключ. Сделать это можно по ссылке ниже:
https://developer.tech.yandex.ru/services/3
Нюанс заключается в том, что Яндекс бесплатно предоставляет возможность 25 тысяч запросов в сутки, и если количество запросов превысит это значение, то вам придется оплачивать каждый последующий запрос.
Запросом является передача на сторону Яндекса адреса в текстовом формате, после которого он возвращает нам координаты объекта
Предположим, что у нас более 300 материалов в выбранной категории, соответственно, нужно построить на карте 300 меток. В итоге получается 300 запросов на сторону Яндекса. При посещаемости сайта в 100 человек в сутки, сайт к концу дня «выберет» бесплатные запросы и владельцу сайта придется раскошелиться на последующую работу модуля.
Чтобы избежать ненужных расходов и оставаться в рамках бесплатного тарифа, модуль при первом открытии и запросе на сторону Яндекса сохраняет полученные координаты объекта в базе данных материала. Делает он это в поле «примечание».
При последующем открытии модуль берет координаты из базы данных сайта, таким образом количество запросов на сторону Яндекса сокращается и приходит к минимуму. Последующий запрос совершается только в том случае, если в указанную категорию добавляется новый материал.
Настройка модуля «Наши работы на карте»
Вернемся в административную панель Joomla и приступим к настройке нашего модуля.
API KEY Yandex — обязательное поле для работы модуля. Мы уже обсуждали, что данный ключ необходимо создать в личном кабинете разработчика на сайте Яндекса.
Определять месторасположение посетителя сайта — если данный переключатель установлен в положение «Да», то при открытии модуля центрирование карты будет производиться на основе текущего месторасположения посетителя сайта. При выборе значения «Нет» центром карты будет столица России Москва.
Отображать заголовок рядом с меткой — рядом с меткой будет отображаться заголовок материала, а фактически адрес.
Выбрать категории — речь идет о категориях Joomla, материалы из которых будут использоваться для хранения данных меток
Высота карты — высота карты в пикселях. Пишем: «300px» или «500px», то есть после числового значения обязательно добавляем «px»
Увеличение карты при открытии — масштаб карты при открытии
Текст на кнопке Подробнее — при клике по метке открывается так называемый балун — небольшое всплывающее окно, в котором появится заголовок материала и кнопка «Подробнее». В данном текстовом поле задается текст а этой кнопке.
Символы - разделители (каждый новый с новой строки)
Предположим, в заголовках наших материалов мы хотим разместить не только адрес, но и какую то дополнительную информацию, например, если речь идет о построенном доме, то его размер.
Однако, если отправить такой заголовок на сторону Яндекса, то с большой вероятностью мы не получим в ответ координаты объекта.
Таким образом, нам нужно разделить наш заголовок на две части. Если мы в поле « Символы — разделители » укажем символ «|», а заголовок нашего материала сделаем, как:
Дом 6 на 6 | Новгородская область, Окуловка
...то на сторону Яндекса будет отправлена вторая часть заголовка и мы получим координаты нашего объекта.
Как видим, настройка модуля не вызывает особых сложностей, готов ответить на любые вопросы, как в личном сообщении, так и в группе «Вконтакте»