Войти на сайт Регистрация
Добавить шаблон В каталоге: 578
Fance.ru
Текстовый рейтинг с Кинопоиска и IMDB
22.09.2013
  • 1188 Просмотров:
  • 0 Скачиваний:
  • 0 Комментариев:
  • 0.0 Рейтинг:
  • (Голосов: 0)
Описание:
За основу был взят модуль MSW с сайта 0-web.ru. Публикуется с его разрешения.

Начнем с того, что я не программист и многих вещей не знаю (не понимаю), но очень люблю ковырять чужой код, чтобы для себя слепить что-нибудь интересное.
Модуль выводит текстовые средние значения рейтинга и голосов с Кинопоиска и IMDB. Данные не кешируются! Я не знаю как работать с кешем DLE, если кто-то допишет этот функционал, то мы все будем только рады smile

Установка:

Создайте доп. поле к новостям с фильмами:
Название поля: kp
Описание поля: ID фильма на КиноПоиске
Категория: /*выбрать категории с фильмами*/
Тип поля: одна строка
Значение по умолчанию:

Создайте файл kinopoisk.php с таким содержимым:

Код

if( ! defined( 'DATALIFEENGINE' ) ) {
  die( "Hacking attempt!" );
}

  $kinopoisk = xfieldsdataload($row['xfields']);
  $kinopoisk['kp'] = preg_replace('#<(.+?)>#', '', $kinopoisk['kp']);
   
  $kinopoisk = $kinopoisk['kp'];
   
  $rating = file_get_contents("http://rating.kinopoisk.ru/{$kinopoisk}.xml");

  preg_match("/kp_rating num_vote=['\"](.+)['\"]>(.+)  $kino_rating = $kp[2];
  $kino_votes = ($kino_rating) ? $kp[1] : "";
  $kino_votes = $kino_votes;

  preg_match("/imdb_rating num_vote=['\"](.+)['\"]>(.+)  $imdb_rating = $imdb[2];
  $imdb_votes = ($imdb_rating) ? $imdb[1] : "";
  $imdb_votes = $imdb_votes;

  if ($imdb_rating =='') {

  $kino_rate = round(($kino_rating), 1);
  $sum_vote = number_format($kino_votes);
   
  } elseif ($kino_rating =='') {
   
  $kino_rate = round(($imdb_rating), 1);
  $sum_vote = number_format($imdb_votes);
   
  } else {

  $kino_rate = round(($kino_rating+$imdb_rating)/2, 1);
  $sum_vote = number_format(($kino_votes+$imdb_votes)/2);
   
  };

$tpl->set('{kinopoisk}', $kino_rate);
$tpl->set('{kinopoisk_vote}', $sum_vote);

?>


И поместите его к себе в /engine/modules

В файле show.full.php добавьте:

Код
require_once ROOT_DIR.'/engine/modules/kinopoisk.php';


После:

Код
$tpl->set( '[/full-link]', "</a>" );


Используйте в своем fullstory.tpl:

Код
{kinopoisk} - цифровой рейтинг
{kinopoisk_vote} - количество голосов
Источник: не указан
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]