Загрузка погоды из Яндекса
//pogoda.yandex.ru/static/cities.xml больше нет, официальное API очень ограничено, виджеты некрасивые, но решение есть - костыли :)
Пример кода как достать погоду с яндекса используя всего пару запросов.
// Получаем ID города через поиск $url = 'https://suggest-maps.yandex.ru/suggest-geo?callback=jQuery&v=8&lang=ru_RU&search_type=weather&part='.urlencode('Москва'); $getCities = file_get_contents($url); $getCities = str_replace('jQuery(', '', $getCities); $getCities = str_replace('])', ']', $getCities); $arCities = json_decode($getCities, true); // Получаем погоду найденных городов foreach($arCities as $arCity) { $weatherXml = simplexml_load_file('https://export.yandex.ru/bar/reginfo.xml?region='.$arCity['geoid'].'&lang=ru'); // Дальше уже обрабатываете полученный xml и выводите погоду }
Помните что данный способ получения данных неофициальный и как долго он проработает неизвестно.
Для 1С-Битрикс есть готовый модуль, основанный на способе выше http://marketplace.1c-bitrix.ru/abudagov.weather/
Есть вопросы или нашли ошибку? Напишите комментарий (можно без регистрации), отвечать стараюсь быстро.