Все для DataLife Engine / DLE хаки / Хак для DLE / Хак добавления видео с сети Вконтакте DLE

Хак добавления видео с сети Вконтакте DLE



Хак добавления видео с социальной сети Вконтакте для DLE пожалуй лучший и удобный хак. Удобность заключается в том, что вам больше не надо вытаскивать ссылки на само видео из фрейма, а просто скопировать и вставить в новость весь код! Хак для dle работает на jquery.
Хак добавления видео с сети Вконтакте DLE
Установка:

Открываем /engine/classes/parse.class.php

1. Ищем:

$source = preg_replace( "#[media=([^]]+)]#ies", "$this->build_media('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", '[media=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("&amp;","&", $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>


Вставляем видео с контакта и радуемся..)

Авторы: Сергей
Совместимость: 9.3, 9.4, 9.5

Советуем dle9.com скачать хак DLE добавления видео с сети Вконтакте

vk.rar [7,75 Kb] (cкачиваний: 205)
  • 100

Комментарии 21

Samson26 от 1 мая 2012 00:00
Цитата: Siriak
Вот это хак работает на 9.5
Открываем /engine/classes/parse.class.php
Найти строку
$source['host'] != "youtube.com" AND
и заменить ее на
$source['host'] != "youtube.com" AND $source['host'] != "vk.com" AND

Далее найти строку
} elseif ($source['host'] == "video.mail.ru") {
и выше нее добавьте следующий код:

Для Dle 9.4 - 9.5
} elseif ($source['host'] == "vk.com") {
$a = explode('oid', $source['query']);
$video_link =$a[1];
$decode_url = "http://vk.com/video_ext.php?oid".$video_link;
return '<!--dle_youtube_begin:'.$decode_url.'--><iframe src="http://vk.com/video_ext.php?oid'.$video_link.'" width="'.$width.'" height="'.$height.'" frameborder="0"></iframe><!--dle_youtube_end-->';


Изменения сделать только в /engine/classes/parse.class.php? Или также в остальных файлах как предложенно в данной статье?
faraon0190 от 3 апреля 2012 18:25
Ребят извините что не в тему но может кто поможет проблема такая добавляю на сайт видео с майла по кнопке тубе и вставляю ссылку видео работает но при нажатии на клавишу на весь экран ни чего не происходит может кто знает как исправить
lovak007 от 27 марта 2012 11:48
У меня на 9.5 ни фигашеньки не выхолит((( iframe не хочет пахать((
mister от 10 марта 2012 13:53
не работает фаербаг и дримрэвэр пишут сдесь ошибку
t.value= t
limteam от 2 марта 2012 12:14
Цитата: Siriak
} elseif ($source['host'] == "vk.com") {
$a = explode('oid', $source['query']);


Привет, а как в твоём способе сделать так чтобы при нажатии на кнопку Tube (в редакторе) и вставке полной ссылки на видео, оно автоматически удаляло тег iframe и оставляло только одну ссылку? в способе который предоставил автор оно делается автоматически но там есть некоторые недочёты. например при быстром и полном редактировании такая штука не проканывает и хак не работает. приходится вручную писать тег, удалять лишний код из ссылки. также метод не работает при включённом wysiwyg редакторе. В итоге если собрать воедино ваши методы, тогда всё работает на половину))) а именно, при добавлении статьи пользуюсь методом автора(это если отключен wysiwyg редактор), а если надо отредактировать статью тогда уже использую твой метод, но всё равно неудобно. надо ссылку выдирать из кода. хотелось бы чтобы ссылка выдиралась автоматически.
Siriak от 23 февраля 2012 03:59
Вот это хак работает на 9.5
Открываем /engine/classes/parse.class.php
Внимание! У Вас нет прав для просмотра скрытого текста.
dle9.com от 22 февраля 2012 06:59
Siriak,
Проверьте на дефаул шаблоне если будет работать , значит проблема в шаблоне скрипт не срабатывает
Siriak от 22 февраля 2012 01:44
Сделал вроде все по инструкции, но чет не пашет.... на 9.5
dle9.com от 15 февраля 2012 16:04
coka1n,
Да, где-то через месяц ...
coka1n от 15 февраля 2012 15:56
а форум плонируется на сайте? Извеняюсь что не в тему...
Добавить комментарий

Оставить комментарий

    • bowtiesmilelaughingblushsmileyrelaxedsmirk
      heart_eyeskissing_heartkissing_closed_eyesflushedrelievedsatisfiedgrin
      winkstuck_out_tongue_winking_eyestuck_out_tongue_closed_eyesgrinningkissingstuck_out_tonguesleeping
      worriedfrowninganguishedopen_mouthgrimacingconfusedhushed
      expressionlessunamusedsweat_smilesweatdisappointed_relievedwearypensive
      disappointedconfoundedfearfulcold_sweatperseverecrysob
      joyastonishedscreamtired_faceangryragetriumph
      sleepyyummasksunglassesdizzy_faceimpsmiling_imp
      neutral_faceno_mouthinnocent