Погода по ip. Умный информер

The Masterpro team is proud to announce the arrival.… extension for Joomla 1.5, Joomla 2.5, Joomla 3.5, Joomla 4 и Joomla 5... ничего, что я по английски? Оkay, вордпрессы и престашопы тоже, походу дела, поддерживаются. Все это богатство - под апачем; я имею в виду, разумеется, лицензию. :D
Не уверен, что это можно назвать расширением joomla… это просто-напросто скрипт на пыхе. Зато работает во всех версиях этого (и не только этого) движка, неприхотлив и безопасен... в том случае, разумеется, если вы не считаете опасным и "прихотливым" даже включенный fopen на вашем сервере. Сильно не пинайте, ночная по сути сборка. Но просто вижу в Сети примеры совершенно монстрообразных решений такого рода, и по-человечески страшно порой становится, когда смотришь на пространный код приложения плюс еще руководство для пользователя в пэдээфе на десяти листах. Речь ведь сугубо о виджете: разговор только об эффектном модуле, который выведет на страничку сайта погоду (либо прогноз погоды на несколько дней) для определенного геотаргетинга. Никогда, поверьте, такая игрушка не будет работать стопроцентно надежно; во всяком случае - если использовались, как в данном случае, некоммерческие сервисы.

Так что первоочередная задача, которая ставилась - это сделать как можно проще. Чтобы можно было копипастнуть со страницы блога код, закинуть на хостинг миниатюрный файлик БД (использовался, для начала, SypexGeo, файл размером 13 mb), раскрасить, при необходимости, стилями. И все. Хотелось, чтобы код не весил почти как база данных и не внушал религиозного ужаса, когда смотришь на все на это со стороны. И чтобы все это еще и работало... да, самое главное рассказать я забыл. Оно работает.

Тщательно потестировал с десятками проксей и на tor-e. Как правило, погоду для данной местности удается определить почти всегда, в абсолютном большинстве случаев. Не только для Москвы и Питера... пробовал заходить через французский прокси, румынский, болгарский, пробовал несколько российских проксей... вот с парочкой белорусских - облом у меня случился, кроме шуток. Погоду в Минске узнать не удалось, господа-товарищи, честно говорю. Да простят меня живущие там хорошие знакомые и коллеги... фиг его знает, почему. Будем подумать и поработать над этим неприятным казусом.

Бывает, не удается определить название города. Не очень часто, но бывает. Погода при этом определяется. Фишка скрипта в том, что погода выводится, исходя из географических координат, а не из названия местности; этим снимается ряд обычных для такого рода решений проблем.

Во всяком случае, хотелось бы надеяться, что "снимается". Буду благодарен за дельные замечания; если что - будем исправлять и дорабатывать... дорабатывать, возможно, используя уже иные БД и иные погодные сервисы. Хотя мне очень понравился использованный в контексте данного скрипта very friendly API от World Weather Online, просто молодцы ребята.

Так что пока - вот, забирайте. Проба пера. Демку выложил в блоге, там же - комментарии и варианты кода.
masterpro.ws/pogoda-po-ip-umnyj-informer

P.S. Демка информера вынесена на отдельный сервер, по ссылке вы видите лишь iframe. "Отдельный сервер" - это сервер Timeweb, который время от времени выпадает в осадок... что поделаешь, Таймвеб он и есть Таймвеб. Справедливости ради надо признать, что сервер этот бесплатен; но увы, не раз имел случай убедиться, что и за деньги Timeweb работает немногим лучше. Если информер выдает ошибку - подождите секунд 30, обычно этого хватает, и перезагрузите страничку. В любом случае, код и комменты всегда доступны на страничке блога, а информер... пусть его работа служит, помимо прочего, еще и некоторой иллюстрацией работы Timeweb-a, которая, на мой взгляд, день ото дня все хуже.
Работает на Kunena форум