Недавно возникла необходимость сделать поддержку видео с ВКонтакте, посмотрел все существующие хаки я решил попробывать сам сделать и вот что из этого получилось. Хак делал для себя изначально, но потом решил выложить может кому пригодится, так что кому не нравится все проходят мимо.
Открываем /engine/classes/parse.class.php
Ищем
$source['host'] != "smotri.com"
Заменяем
$source['host'] != "smotri.com" AND $source['host'] != "vkontakte.ru"
Далее ищем
return '<!--dle_media_begin:'.$decode_url.'--><iframe width="'.$width.'" height="'.$height.'" src="http://player.vimeo.com/video/'.$video_link.'" frameborder="0" allowfullscreen></iframe><!--dle_media_end-->';
}
Заменяем
return '<!--dle_media_begin:'.$decode_url.'--><iframe width="'.$width.'" height="'.$height.'" src="http://player.vimeo.com/video/'.$video_link.'" frameborder="0" allowfullscreen></iframe><!--dle_media_end-->';
} elseif ($source['host'] == "vkontakte.ru") {
$a = explode('&', $source['query']);
$i = 0;
while ($i < count($a)) {
$b = explode('=', $a[$i]);
if ($b[0] == "oid") $video_link = totranslit($b[1], false);
$c = explode('=', $a[$i]);
if ($c[0] == "id") $video_link2 = totranslit($c[1], false);
$d = explode('=', $a[$i]);
if ($d[0] == "hash") $video_link3 = totranslit($d[1], false);
$i++;
}
if ( count($get_size) == 2 ) $decode_url = $height."x".$width.",http://vkontakte.ru/video_ext.php?oid=".$video_link."&id=".$video_link2."&hash=".$video_link3;
else $decode_url = "http://vkontakte.ru/video_ext.php?oid=".$video_link."&id=".$video_link2."&hash=".$video_link3;
return '<!--dle_media_begin:'.$decode_url.'--><iframe src="http://vkontakte.ru/video_ext.php?oid='.$video_link.'&id='.$video_link2.'&hash='.$video_link3.'" frameborder="0" height="'.$height.'" width="'.$width.'" ></iframe><!--dle_media_end-->';
}
Вот и все вроде несложно!
Для вывода на сайте используем
[media=http://vkontakte.ru/video_ext.php?oid=38793123&id=160955544&hash=9b955af061b6eed6&hd=1]
Настраиваем ширину и высоту в админке - Настройка видеопроигрывателей