Бесплатный плагин Joomla 3 для определения геоданных посетителей сайта по IP адресам.
Определение геоданных основано на
Sypex Geo.
Определяет страну, регион, город, географическую широту/долготу (центра выявленного города).
ОсобенностиУстановочный архив с плагином сам по себе не включает базу Sypex Geo. За счёт этого весит мало, устанавливается быстро.
При включении плагина, в админ-панели, предложит скачать актуальную базу Sypex для дальнейшей работы.
Далее с установленной периодичностью будет предлагать актуализировать базу (скачать обновлённую) - прямо в системном сообщении, в любом разделе админки, не только в настройках плагина. Там же (в системном сообщении) и кнопка для быстрого обновления - минимум усилий
Плагин на ранней стадии загрузки Joomla определяет геоданные посетителя с записывает их в константы, которые далее доступны в любом PHP скрипте (хоть в компонентах, хоть в модулях, хоть в плагинах, хоть в шаблоне). Кроме того, есть возможность на выходе HTML заменить в текстах названия констант их значениями.
Например, если в заголовке модуля написать "Город GEODATA_CITY_NAME_RU" на странице этот заголовок модуля будет выглядеть: "Город Москва", "Город Челябинск" и так далее.
Что касается нагрузкиСамо по себе решение SypexGeo - довольно хорошее, но всё же для сайтов с большой посещаемостью определять геоданные (анализируя базу Sypex) для каждой загрузки страниц каждым посетителем - это вполне ощутимая по ресурсоёмкости задача.
Поэтому предпринята такая схема для оптимизации:
Анализируем базу через Sypex только в том случае, если не нашли данных для этого посетителя в его сессии или не нашли данных для его IP в базе данных.
То есть сначала плагин пробует брать геоданные из сессии. Таким образом, если это уже знакомый посетитель (с сессией), то вообще никаких дополнительных телодвижений не делается.
Если в сессии нет геоданных - пробует найти геоданные для IP посетителя в БД. Если они там есть (например, это бот или краулер), то на этом и финиш, данные получены. Один запрос.
Если же нет ни в сессии, ни в БД, тогда подключаем класс SypexGeo и получаем геоданные (записываем в сессию и БД).
Всё это очень эффективно минимизирует нагрузку.
Плагин выпущен изначально, кажется, летом-осенью 2020 года.
Используется ежедневно мной на довольно посещаемом ресурсе. Всё стабильно.
С ноября 2020 года плагин выложен общественности - бесплатно. Есть скачивания, жалоб пока нет
Официальный сайт:
https://iresurs.com/ru/joomla/ir-geodataПриглашаю затестить
В случае чего - пишите.