Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru FAQ (все вопросы) Модули Как организовать вывод рейтинга кинопоиска на всех страницах сайтах?

Как организовать вывод рейтинга кинопоиска на всех страницах сайтах?


     30.10.2015    Модули    879

вопрос
имеется модуль


<?    

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

$cacheid = $row['id'];

$all = unserialize(dle_cache( "kino_rating"."_".$cacheid, $config['skin'] ));
$kino_rating = $all[0];
$kino_votes = $all[1];
$imdb_rating = $all[2];
$imdb_votes = $all[3];

$timeout = stream_context_create( array (
'http' => array(
'timeout' => 1
)
)
);

if ($all =='') {

$all = array();

$kinopoisk = xfieldsdataload($row['xfields']);
$kinopoisk['kp'] = preg_replace('#<(.+?)>#', '', $kinopoisk['kp']);

$kinopoisk = $kinopoisk['kp'];

$rating = file_get_contents("http://rating.kinopoisk.ru/{$kinopoisk}.xml", 0, $timeout);

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

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

$all = array( $kino_rating, $kino_votes, $imdb_rating, $imdb_votes);

create_cache( "kino_rating"."_".$cacheid, serialize($all), $config['skin'] );

}

if ($imdb_rating =='' or $imdb_rating =='0') {

$kino_rate = round(($kino_rating), 1);
$sum_vote = number_format($kino_votes);

} elseif ($kino_rating =='0' or $kino_rating =='') {

$kino_rate = round(($imdb_rating), 1);
$sum_vote = number_format($imdb_votes);

} else {

$kp = round(($kino_rating), 1);
$imdb = round(($imdb_rating), 1);


};

$tpl->set('{kinopoisk}', $kp);
$tpl->set('{imdb}', $imdb);
$tpl->set('{kinopoisk_vote}', $kino_votes);
$tpl->set('{imdb_votes}', $imdb_votes);

?>


устанавливал по этому хелпу:
В файле show.full.php добавьте:
require_once ROOT_DIR.'/engine/modules/kinopoisk.php';

После:
$tpl->set( '[/full-link]', "" );

Используйте в своем fullstory.tpl:
{kinopoisk} - цифровой рейтинг
{kinopoisk_vote} - количество голосов
------------------------------
рейтинг выводится только в полной новости на остальных страницах выводится тег {kinopoisk} подскажите как сделать чтоб везде выводился рейтинг например на главной странице в короткой новости и т.д. ?

Ответил: Dymatize


Не мучайтесь, у кинопоиска новая версия и скоро её сделают основной. Ваш рейтинг накроется и уже не починишь, ибо в новой версии КП, его вроде как нет совсем...

Комментарии пользователей (1)

vitnet
218

2173 | 930

vitnet - 31 октября 2015 00:34 - Эксперт

Используйте лучше JS версию

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

 11.05.2014 kolumb  Модули