Данный материал предоставлен сайтом ProWebber.cc исключительно в ознакомительных целях. Администрация не несет ответственности за его содержимое.
Скачать бесплатно Добавление видео с ВКонтакте v2.
Скачать бесплатно Добавление видео с ВКонтакте v2.
Пожалуй самый лучший хак добавления видео с социальной сети Вконтакте. Хак сам по себе очень удобен, удобность заключается в том, что вам больше не надо выдирать ссылки на само видео из фрейма, а просто скопировать и вставить в новость весь код! Хак работает на jquery.
- Открываем /engine/classes/parse.class.php
1. Ищем:
$source = preg_replace( "#\[youtube=([^\]]+)\]#ies", "\$this->build_youtube('\\1')", $source );
1.1. После добавляем:
$source = preg_replace( "#\[vk=([^\]]+)\]#ies", "\$this->build_vk('\\1')", $source );
2. Ищем:
$txt = preg_replace( "#<!--dle_youtube_begin:(.+?)-->(.+?)<!--dle_youtube_end-->#is", '[youtube=\\1]', $txt );
2.1. После добавляем:
$txt = preg_replace( "#<!--dle_vk_begin:(.+?)-->(.+?)<!--dle_vk_end-->#is", '[vk=\\1]', $txt );
3. Ищем:
function build_url($url = array()) {
3.1. ПЕРЕД добавляем:
function build_vk($url) {
$url = $this->clear_url( urldecode( $url ) );
$url = str_replace("&","&", $url );
if( $url == "" ) return;
$source = @parse_url ( $url );
$source['host'] = str_replace( "www.", "", strtolower($source['host']) );
if ($source['host'] != "vk.com" AND $source['host'] != "vkontakte.ru") return "[vk=".$url."]";
return '<!--dle_vk_begin:'.$url.'--><center><iframe src=\"'.$url.'\" width=\"585\" height=\"360\" frameborder=\"0\"></iframe></center><!--dle_vk_end-->';
}
Меняем значения width и height на те, которые вам нужны.
- В вашем шаблоне открываем /addnews.tpl и добавляем:
<script language="javascript" type="text/javascript">
/*<![CDATA[*/
document.onmouseup = function(){
var t = document.getElementsByTagName('textarea');
var short_scrollTop = document.getElementById('short_story').scrollTop;
var short_scrollLeft = document.getElementById('short_story').scrollLeft;
var full_scrollTop = document.getElementById('full_story').scrollTop;
var full_scrollLeft = document.getElementById('full_story').scrollLeft;
for (var i=0; i<t.length; i++) {
t[i].value=t[i].value.replace(/<iframe src="(.*?)".*?<\/iframe>/gim, '[vk=$1]');
}
document.getElementById('short_story').scrollLeft = short_scrollLeft;
document.getElementById('short_story').scrollTop = short_scrollTop;
document.getElementById('full_story').scrollLeft = full_scrollLeft;
document.getElementById('full_story').scrollTop = full_scrollTop;
}
/*]]>*/
</script>
(Это для того, чтобы jquery работал при добавлении новостей с сайта)
- Открываем /engine/skins/default.skin.php
ПЕРЕД:
</body>
Вставляем:
<script language="javascript" type="text/javascript">
/*<![CDATA[*/
document.onmouseup = function(){
var t = document.getElementsByTagName('textarea');
var short_scrollTop = document.getElementById('short_story').scrollTop;
var short_scrollLeft = document.getElementById('short_story').scrollLeft;
var full_scrollTop = document.getElementById('full_story').scrollTop;
var full_scrollLeft = document.getElementById('full_story').scrollLeft;
for (var i=0; i<t.length; i++) {
t[i].value=t[i].value.replace(/<iframe src="(.*?)".*?<\/iframe>/gim, '[vk=$1]');
}
document.getElementById('short_story').scrollLeft = short_scrollLeft;
document.getElementById('short_story').scrollTop = short_scrollTop;
document.getElementById('full_story').scrollLeft = full_scrollLeft;
document.getElementById('full_story').scrollTop = full_scrollTop;
}
/*]]>*/
</script>
(Это для того, чтобы jquery работал при добавлении новостей с админ-панели)
Вот пожалуй и все. Сам пользуюсь данным хаком, так как считаю его самым удобным и простым!
Авторы: рони & kavadims
Источник: dletweak.ru
Совместимость: Все версии (Тестировал на 8.2,8.3,9.0,9.2)
Предыдущая Следующая