Четверг, 01 января 2015 23:43

jWeather by ip. Погода по ip для Joomla!

Оцените материал
(12 голосов)

Возможно, любителей и профессионалов Joomla заинтересует краткая аннотация очередного релиза jWeather by ip: Joomla-модуль, предоставляющий веб-администратору сайта гибкие возможности управления показом текущего состояния погоды, актуальной для геотаргетинга посетителя сайта.

 

Download jWeather_by_ip (World Weather Online + OpenWeatherMap + Visual Crossing + Open-Meteo + MeteoSource + IPGeolocation + geoPlugin)

Technical requirements: PHP 7 or PHP 8, Joomla 4.x & 5.x.

v.2.4.1 February 28, 2024 md5sum acf957639cf784a50fd432a6792f450c

 

Download jWeather_by_ip (World Weather Online + OpenWeatherMap + Dark Sky + Sypex Geo + IPGeolocation + geoPlugin)

Technical requirements: PHP 7, Joomla 3.

v.1.22 October 20, 2022 md5sum 136986cb210e22a8239ba8a70acfa006

 

Собственно, получился виджет, при создании кода которого я старался руководствоваться соответствием парадигме MVC Joomla (возможно, не все в курсе, но по доке Joomla - это MVC-фреймворк) и общепринятому в среде разработки code style. В итоге (хотя про итог рано, модуль находится в перманентном развитии) получилось вполне себе симпатичное поделие в духе (надеюсь) идеологии Joomla.

 

Актуальная на данный момент версия модуля поддерживает интеграцию с пятью погодными станциями: WorldWeatherOnline, OpenWeatherMap, Visual Crossing, Open-Meteo, MeteoSource и двумя сервисами определения геотаргетинга: IPGeolocation и geoPlugin. Ранее был еще и американский Weather Underground, но публичный доступ к его API, к сожалению, некоторое время назад был закрыт.

Attention. Support for the Dark Sky API will be ending on March 31st, 2023. Dark Sky is no longer accepting new members..

 

С самого начала про условия доступа к API weather stations:

  1. WWO предоставляет бесплатный триал на 30 дней.
  2. У OpenWeatherMap один из самых щедрых, вероятно, API: до 60 запросов в минуту бесплатно. Думаю, для начала неплохо? Про качество погодных данных OpenWeatherMap написано немало, если будет интерес - без проблем сможете составить собственное мнение. Имхо, скажем так, на крепкую троечку.
  3. Visual Crossing: 1000 records/day Free. Изображения погодных условий уже находятся в директории модуля.
  4. MeteoSource: 400 free calls per day. Модуль также содержит симпатичный набор иконок этой погодной станции.
  5. Open-Meteo не требует даже регистрации, потому и включен по умолчанию. Пробуйте.

 

Начиная с v.1.17, jWeatherByIP поддерживает MARINE, SAILING AND SURFING WEATHER API WorldWeatherOnline, который не рекомендую использовать в связке с определением местоположения посетителя сайта по ip: как видите, в топе статьи модуль показывает статичный таргетинг, а в сайдбаре - погоду по ip. Будьте внимательны: когда в настройках выбран этот API, модуль возвращает среднесуточные (day average) показатели погодных кондиций. Если необходимо отображение более актуальных характеристик погоды, имеющей свойство быстро меняться - используйте LOCAL WEATHER API WorldWeatherOnline либо иную погодную станцию.

 

В качестве альтернативы SypexGeo в модуль добавлена поддержка IP Geolocation API и geoPlugin API (до двух бесплатных запросов в секунду!), два популярных сервиса геолокации. Чуть ранее использовался еще и американский MaxMind, но вследствие некоторых технических проблем пришлось от него отказаться; надеюсь, это временно. В любом случае, геолокация в современном интернете не проблема... в панели администрирования jWeather вам всего лишь понадобится ввести полученный на страничке того или иного сервиса бесплатный ключ доступа, после чего сохранить настройки, опубликовав модуль на любых страничках сайта.

 

Актуальная версия модуля позволяет не использовать геотаргетинг, привязав отображение погодных кондиций к географическим координатам. Во всех других случаях - пожалуйста, не забывайте, кэширование страниц способно свести на нет определение местонахождения посетителя вашего сайта. Например, кэш для этой страницы сайта отключен; либо же вы можете поэкспериментировать с т.н. "прогрессивным кэшем" Joomla.

 

Админка модуля позволяет сконфигурировать довольно многое: от стилей шрифтов до выбора ряда отображаемых погодных характеристик, плюс время восхода/заката луны/солнца (это только в контексте WorldWeatherOnline и Visual Crossing. Сконфигурировав часовой пояс сайта - System Dashboard -> Global Configuration -> Server -> Location - вы добьетесь корректного отображения времени восхода и заката). Последние реализованные фичи модуля - возможность, при желании, отображать погоду на картах Google и Yandex: сама карта при этом, естественно, центрируется географическими координатами пользователя сайта. Т.е. в итоге получилось что-то вроде реинкарнации погодного слоя Google Map, deprecated несколько лет назад. Язык карты соответствует выбранному в панели управления Joomla языку сайта: русский или английский, то же самое и относительно отображаемой модулем погодной информации. В довершение вкусностей возможно включение js, выводящего произвольное приветствие в зависимости от локального времени посетителя.

И это еще не все...

 

Увидеть на гитхабе.

 

Модуль можно отревьюить, при желании, в Joomla Extension Directory, глянуть код - на гитхабе. Пара демок размещены на этой страничке, также имеет место быть ряд ссылок в левом сайдбаре ("модуль jWeatherByIP. Примеры виджетов в блоге"). И, разумеется, это open source, модуль распространяется на условиях GNU/GPL license, что означает, если уж совсем по-простому - свободен и бесплатен.

Последнее изменениеСреда, 28 февраля 2024 21:56

14 комментарии

  • Комментировать Aleksej Вторник, 23 апреля 2019 14:03 написал Aleksej

    Модуль полностью переписан заново, Maxmind на данный момент удален, добавлена поддержка IPGeolocation, значительные изменения претерпел пользовательский интерфейс модуля. Добавлена возможность отображения состояния погоды на Google Map.

  • Комментировать Aleksej Понедельник, 30 января 2017 23:18 написал Aleksej

    Добавлена поддержка MaxMind GeoLite2-City.mmdb.

  • Комментировать Aleksej Вторник, 06 декабря 2016 19:00 написал Aleksej

    На sypexgeo.net отзывчивый саппорт и вполне дружелюбный форум, не стесняйтесь обращаться туда с такого рода проблемами. Не существует в природе свободного от ошибок ПО.

  • Комментировать ugor Вторник, 06 декабря 2016 18:38 написал ugor

    Одна беда, SypexGeo промахивается - буквально вчера был очень удивлен, определился город на другом континенте... не фиговый промах.

Оставить комментарий

Добавьте ваш комментарий

Temperature, °C2
Wind speed 24.1
Cloudcover 91.1
Description weatherSnow, Rain, Overcast
Solar power (W/m2)52.2
Indicates the total energy from the sun (MJ/m2)4.4
Moon phase0.69
Level (0 - 10) of UV exposure2
Probability (%) of adverse weather conditions10
Dew point temperature (°C)-1.2
What a temperature feels like (°C)-2.4
Types of precipitationrain

Tic-Tac-Toe with a Neural Network