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

Рубрика: Хаки для DLE » Хак DLE 11.2, 11.1, 11.0, 10.6, 10.5, 10.4, 10.3, 10.2, 10.1, 10.0, 9.8, 9.7, 9.6, 9.5, 9.4, 9.3, 9.2, 9.0
Хак добавления видео с сети Вконтакте 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

Советуем www.dle9.com скачать хак DLE добавления видео с сети Вконтакте
  • 100
Рубрика: DLE хаки » Хак для DLE
Ранее » Устанавливаем swf анимацию забавной странички Ошибки 404« Далее Хак Раскрывающие меню средствами движка DLE
Добавление комментарияОставить комментарий
  • № :21
  • 24 октября 2013 13:26
Цитата: ntpo
а как в DLE 10 реализовать?

Брать версию 9.4 и смотреть, где вставки кода делаются, а потом искать похожие места в в файлах 10.0 версии...
стоит помнить что VK все время меняется и возможно код уж не актуален, т.ч. возможно стоит сначала проверить на 9.4, а потмо пробовать на 10 реализовать

Другой вариант искать автора, может есть готовая адаптация для 10.0 dle
  • № :20
  • 24 октября 2013 11:05
а как в DLE 10 реализовать?
  • № :19
  • 6 февраля 2013 20:16
Помогите разобраться, не понимаю в чем дело, было все нормально по размерам width="585" height="360", вот сегодня начал добавлять и вот что увидел:
Внимание! У вас нет прав для просмотра скрытого текста.


В parse.class.php поглядел размеры те же, не понимаю что произошло. Не знаете ?
  • № :18
  • 31 декабря 2012 11:22
Есть такой вариант, судя по сообщением хак не работает или на сервере vk давно сменили скрипт

Хаки для DLE добавления видео vkontakte на дле ниже 9.6
  • № :17
  • 31 декабря 2012 11:21
DLE9.5... в общем НЕ РАБОТАЕТ
  • № :16
  • 31 декабря 2012 11:15
Вставляю ссылку , при просмотре новости окно есть но пишет что файл не найден(ссылка такого характера
Внимание! У вас нет прав для просмотра скрытого текста.
)Где и что неправильно?
  • № :15
  • 2 сентября 2012 11:30
Установил 9.5, не прет, теперь назад все исправлять надо angry
  • № :14
  • 23 июня 2012 23:22
Siriak,

Сделал как ты написал, но почему не пашет вообще. Или нужно что то ещё сделать? Если взарание спс! )
  • № :13
  • 6 мая 2012 02:38
Suro,
Все работает. Уже давно пользуюсь...
  • № :12
  • 4 мая 2012 23:58
на 9.5 как не пробовал, не получается
  • № :11
  • 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? Или также в остальных файлах как предложенно в данной статье?
  • № :10
  • 3 апреля 2012 18:25
Ребят извините что не в тему но может кто поможет проблема такая добавляю на сайт видео с майла по кнопке тубе и вставляю ссылку видео работает но при нажатии на клавишу на весь экран ни чего не происходит может кто знает как исправить
  • № :9
  • 27 марта 2012 11:48
У меня на 9.5 ни фигашеньки не выхолит((( iframe не хочет пахать((
  • № :8
  • 10 марта 2012 13:53
не работает фаербаг и дримрэвэр пишут сдесь ошибку
t.value= t
  • № :7
  • 2 марта 2012 12:14
Цитата: Siriak
} elseif ($source['host'] == "vk.com") {
$a = explode('oid', $source['query']);


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