Предыстория: Так как тематика сайта – городской портал, соответственно необходимы стандартные городские модули. Одним из них стала Погода. Просмотрел весь РуНет – но меня не устроило ни одно решение из представленных, т.к. то оно представлено виджетом на сайте – то использовались многие источники, которые не совсем радуют своей точностью прогноза. Хотелось более-менее частого обновления точного прогноза и оперативных данных. Пришла идея написать модуль погоды на основе БЕСПЛАТНО предоставляемых данных сайтом rp5.ru. Так как модули я раньше не писал для DLE – первая версия вышла сыровата. Итак:
Исходные данные:
Да, в данном модуле используются оба источника, так как RSS обновляется в среднем каждый 3,5 часа. А предоставленных XML примерно раз в 12 часов.

Основная информация:
Название: SDV_Weather 0.01
Разработчик: Я (Daniil V. Savenkoff)
Версии PHP: PHP 5.3.x и PHP 5.4.x
Версии CMS DLE: 9.7, 9.8, 10.0
Кодировка: только windows-1251
Основные функции модуля:
Парсит XML поток погоды rp5.ru
Парсит RSS поток погоды rp5.ru
Время прогноза определяется с учётом смещения в настройках DataLifeEngine, а так же времени сервера.
Обновляет информацию, только при отсутствии её в БД.
Выводит погоду на ближайшие 48 часов в 4 строки.
Выводит последнюю сводку с метеостанции.
При сильном морозе\жаре выделяет температуру нужным цветом и ставит иконку соответствующего изображение.
При сильном ветре выставляет иконку сильного ветра.
При наведении на иконку облачности выводит полную информацию о облачности и осадках.
Установка модуля:
1. Скопировать все файлы из папки в корень сайта
2. Отредактировать .htaccess файл в корне сайта:
После:
Вставить:
3. Отредактировать файл engine.php
После строк:
вставить:
После строк:
вставить:
Сайт разработчика
Скачать модуль
Исходные данные:
Да, в данном модуле используются оба источника, так как RSS обновляется в среднем каждый 3,5 часа. А предоставленных XML примерно раз в 12 часов.

Основная информация:
Название: SDV_Weather 0.01
Разработчик: Я (Daniil V. Savenkoff)
Версии PHP: PHP 5.3.x и PHP 5.4.x
Версии CMS DLE: 9.7, 9.8, 10.0
Кодировка: только windows-1251
Основные функции модуля:
Парсит XML поток погоды rp5.ru
Парсит RSS поток погоды rp5.ru
Время прогноза определяется с учётом смещения в настройках DataLifeEngine, а так же времени сервера.
Обновляет информацию, только при отсутствии её в БД.
Выводит погоду на ближайшие 48 часов в 4 строки.
Выводит последнюю сводку с метеостанции.
При сильном морозе\жаре выделяет температуру нужным цветом и ставит иконку соответствующего изображение.
При сильном ветре выставляет иконку сильного ветра.
При наведении на иконку облачности выводит полную информацию о облачности и осадках.
Установка модуля:
1. Скопировать все файлы из папки в корень сайта
2. Отредактировать .htaccess файл в корне сайта:
После:
| Код |
|---|
# вывод избранных статей RewriteRule ^favorites(/?)+$ index.php?do=favorites [L] RewriteRule ^favorites/page/([0-9]+)(/?)+$ index.php?do=favorites&cstart=$1 [L] |
| Код |
|---|
# SDV Weather RewriteRule ^weather(/?)+$ index.php?do=weather [L] |
После строк:
| Код |
|---|
case "weather" : include ENGINE_DIR . '/modules/sdv_weather.php'; break; |
| Код |
|---|
case "weather" : include ENGINE_DIR . '/modules/sdv_weather.php'; break; |
| Код |
|---|
elseif ($do == 'tags') {
if ($config['allow_alt_url'] == "yes") $s_navigation .= " » <a href=\"" . $config['http_home_url'] . "tags/\">" . $lang['tag_cloud'] . "
</a> » " . $tag;
else $s_navigation .= " » <a href=\"?do=tags\">" . $lang['tag_cloud'] . "</a> » " . $tag;
} |
| Код |
|---|
elseif ($do == 'weather') {
$s_navigation .= " » " . $lng['title'];
} |
Скачать модуль

