Главная » DLE » Статьи DLE » Видео Вконтакте на DLE. Как встроить видео с контакта в DLE.
Распечатать статью

Видео Вконтакте на DLE. Как встроить видео с контакта в DLE.

Привет! Давненько я не писал уже никаких полезных статей по dle, как-то не было желания.. Сегодня я напишу о том, как встроить видео с Вконтакте в новости на DLE сайте. Данный мануал нужен в первую очередь мне самому, т.к я часто создаю новые сайты с сериалами онлайн и каждый раз лезу искать инструкцию по установке этого хака. Я решил, что будет лучше если все инструкции будут находится на одном блоге. Ну всё, поехали :)

На данный момент очень популярны сайты с фильмами онлайн на которых используется видеоплеер от сайта Вконтакте. Для встраивания видео там используется фрейм (iframe). При добавлении айфрейм кода в новости на дле сайтах, парсер DataLife Engine съедает тот код и на выходе мы ничего не получаем. Это сделано в целях безопасности.
Однако фрейм код от вк не несёт ничего вредоносного, поэтому мы будем использовать специальный хак, который будет обрабатывать добавляемый код и превращать его в нужный нам вид.

Если вам лень самим делать сайты, то советую прибегнуть вк помощи специальных студий работающих в этом направлении. В настоящее время созданием интернет сайтов занимается огромное количество студий веб-дизайна и разработки. К этому моменту необходимо отнестись внимательно, ведь заказав разработку веб сайта в Харькове у недобросовестных студий, вы рискуете потратить свои деньги впустую. Выбирайте только авторитетные студии веб-дизайна, хотя иногда и молодые разработчики веб сайтов могут удивить вас своими ценами и качеством выполняемой работы.

Используемый мною хак добавления видео с социальной сети Вконтакте является лучшим решением этой проблемы. В нём используется jquery, что добавляет множество преимуществ. Вам нужно будет только скопировать код видео и вставить его в новость, а остальное за вас сделает хак.

Инструкция по установке хака (Работает на DLE 9.4-9.5!):

  • Открыть /engine/classes/parse.class.php
    найти

    $source = preg_replace( «#\[media=([^\]]+)\]#ies», «\$this->build_media(‘\\1′)», $source );

    ниже добавляем

    $source = preg_replace( «#\[vk=([^\]]+)\]#ies», «\$this->build_vk(‘\\1′)», $source );

    найти

    $txt = preg_replace( «#<!—dle_youtube_begin:(.+?)—>(.+?)<!—dle_youtube_end—>#is», ‘[media=\\1]‘, $txt );

    ниже добавить

    $txt = preg_replace( «#<!—dle_vk_begin:(.+?)—>(.+?)<!—dle_vk_end—>#is», ‘[vk=\\1]‘, $txt );

    найти

    function build_url($url = array()) {

    выше добавить

    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 — это ширина и высота видеоплеера, которую вы можете отрегулировать по желанию.

  • Открыть templates/ваш_шаблон/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>

  • Открыть /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>

На этом всё. Хак должен работать на версиях DLE от 8.3 до 9.2. Благодаря этому хаку, вы отныне можете без проблем добавлять видео с ВКонтакте на свой DLE сайт.
Пользуйтесь.

Источник: terobait48.ru

Вы можете оставить комментарий, или обратную ссылку на Ваш сайт.

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

Похожие статьи