Главная страница / DataLife Engine / Хаки / Вывод запасного плеера (yohoho) в автоматическом режиме

Вывод запасного плеера (yohoho) в автоматическом режиме

02 декабря 2020, Среда
1 614
0
Вывод запасного плеера (yohoho) в автоматическом режиме

Последнее время часто напрягает ситуация, когда плеер коллапсов загружается более 5-10 секунд, и не всегда все пользователи будут ждать пока загрузится плеер. Выход из ситуации решил сделать старым хаком, который когда-то выкладывали на зерокуле. Только вместо второго iframe из доп поля я заменил на вывод плееров yohoho.

Подключение в место вывода плеера:
{include file="engine/modules/player.php?moonpl=*доп поле с основным плеером*&twopl=*доп поле с ID кинопоиска*"}

Код содержимого файла:
<?php
// {include file="engine/mods/player.php?moonpl=*доп поле с основным плеером*&twopl=*доп поле с ID кинопоиска*"}
//http://zerocoolpro.biz/forum/threads/vyvod-zapasnogo-pleera-v-avt-rezhime.16798/

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

   function isSiteAvailible($url) {
    if(!filter_var($url, FILTER_VALIDATE_URL)){
      return false;
    }
    $curlInit = curl_init($url);
    curl_setopt($curlInit,CURLOPT_CONNECTTIMEOUT,10);
    curl_setopt($curlInit,CURLOPT_HEADER,true);
    curl_setopt($curlInit,CURLOPT_NOBODY,true);
    curl_setopt($curlInit,CURLOPT_RETURNTRANSFER,true);
    $response = curl_exec($curlInit);
    curl_close($curlInit);
    return $response ? true : false;
  }
$cacheplayer = dle_cache("playerid_" . $player_nid, $config['skin']);
	if(isSiteAvailible($moonpl)){
		echo "<iframe style='border:0px;width: 100%;' data-src='{$moonpl}' allowfullscreen></iframe>";
	}else{
		echo "<div id='yohoho' data-kinopoisk='{$twopl}'></div><script src='//yohoho.cc/yo.js'></script>";
	}
?>

или
<?php
// {include file="engine/mods/player.php?moonpl=*доп поле с основным плеером*&twopl=*доп поле с ID кинопоиска*"}
//http://zerocoolpro.biz/forum/threads/vyvod-zapasnogo-pleera-v-avt-rezhime.16798/

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

   function isSiteAvailible($moonpl) {
    if(!filter_var($moonpl, FILTER_VALIDATE_moonpl)){
      return false;
    }
    $cmoonplInit = cmoonpl_init($moonpl);
    cmoonpl_setopt($cmoonplInit,CmoonplOPT_CONNECTTIMEOUT,10);
    cmoonpl_setopt($cmoonplInit,CmoonplOPT_HEADER,true);
    cmoonpl_setopt($cmoonplInit,CmoonplOPT_NOBODY,true);
    cmoonpl_setopt($cmoonplInit,CmoonplOPT_RETURNTRANSFER,true);
    $response = cmoonpl_exec($cmoonplInit);
    cmoonpl_close($cmoonplInit);
    return $response ? true : false;
  }
$cacheplayer = dle_cache("playerid_" . $player_nid, $config['skin']);
	if(isSiteAvailible($moonpl)){
		echo "<iframe style='border:0px;width: 100%;' data-src='{$moonpl}' allowfullscreen></iframe>";
	}else{
		echo "<div id='yohoho' data-kinopoisk='{$twopl}'></div><script src='//yohoho.cc/yo.js'></script>";
	}
?>

Источник информации

PS у меня iframe выводится через lazyload (который есть в DLE), поэтому в iframe прописано data-src. Если у вас iframe выводится стандартно - удалите data-, чтобы осталось только src=.

PS2 работает не со всеми балансерами.
Комментарии:
{login}

Твой комментарий..

Модули для создания киносайта и не только на базе DataLife Engine, и многое другое...
Просто блог Евгения Попова, он же - byroot © 2015-2025 | Карта сайта