10-03-2011, 08:46 Посмотрели: 7561 Добавил: Alex V

DLE видео вконтакте [Безопасная версия]


Данный хак для DLE на JQuery исправляет косяк из-за которого мы не можем добавлять видео Вконтакте на наши сайты. Самый главный плюс это хака, который отличает его от предыдущих, это его безопасность.

Т.е. если вы поставите хак dle видео вконтакте, то можете быть уверенны, что другой Iframe на сайте не будет обрабатываться, попав под дефолтовый фильтр системы.

И так приступим к инструкции установки видео вконтакте для DLE:

1. Открываем файл /engine/classes/parse.class.php и делаем следующее:

Найти строчку:

$source = preg_replace( "#\[youtube=([^\]]+)\]#ies", "\$this->build_youtube('\\1')", $source );


Ниже добавляем код:

$source = preg_replace( "#\[vk=([^\]]+)\]#ies", "\$this->build_vk('\\1')", $source );


Ищем такую строчку:

$txt = preg_replace( "#<!--dle_youtube_begin:(.+?)-->(.+?)<!--dle_youtube_end-->#is", '[youtube=\\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("&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-->';
    }


* Вы можете изменить в коде который находиться выше, два значения:

1. width - (ширина плеера)
2. height - (высота плеера)

Впишите туда нужные Вам размеры в пикселях или оставьте стандартные настройки.

2. Далее открываем файл /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>


3. Открыть последний файл /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 видео вконтакте без всяких проблем. А самое главное, что это полностью безопасный метод!
Рубрика записи: Хаки

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь. Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

№ 1. 15-04-2011 06:18 deniss5414 из групы: Посетители сказал :
Есть кто на сайте мужики помощь нужна плеер заработал в короткой новости а в полной ошибка у кого нибудь есть такое что ошибку выбивает в полной новости.

Ура заработало где то видимо ошибку допустил огромное спасибо да действительно вам почёт побольше таких людей просто молодец.
№ 2. 18-04-2011 13:47 Alex V из групы: Администраторы сказал :
Советую просто внимательно читать мануал.

У меня на 3-х сайтах стоит этот хак и все работает.


Коллектив WebNine Young (w9y)
№ 3. 14-05-2011 06:59 namid-77 из групы: Посетители сказал :
Специально зарегился,что бы сказать СПАСИБО!!! Все работает отлично. Большой админу респект и уважуха.
№ 4. 10-06-2011 06:52 Alex V из групы: Администраторы сказал :
namid-77 , спасибо winked

Коллектив WebNine Young (w9y)
№ 5. 02-10-2011 16:04 regulator из групы: Посетители сказал :
а для какой версии движка актуален этот метод?
у меня стоит 9. 3 и самый первый пункт не получается, такой строчки там нет((
№ 6. 21-10-2011 07:41 Alex V из групы: Администраторы сказал :
regulator, найдите в файле код "$source = preg_replace" и вставьте выше или ниже любой строки код.

Коллектив WebNine Young (w9y)
№ 7. 28-10-2011 23:43 Deomenator из групы: Посетители сказал :
Мужики, а на 9.4 идет????
№ 8. 29-10-2011 16:13 regulator из групы: Посетители сказал :
Deomenator,
вообще професиональные вебмастера не советуют использовать свежие движки т. к. у них много ошибок
№ 9. 02-11-2011 16:40 WAOS из групы: Посетители сказал :
На DLE 9.2 не выводит видео, в чём проблема ???
№ 10. 06-11-2011 11:58 Alex V из групы: Администраторы сказал :
Цитата: WAOS
На DLE 9.2 не выводит видео, в чём проблема ???


Я на 9.2 ставил на 3-х сайтах, все нормально работает. Советую заново пройти установку, видимо что-то напортачили.


regulator, поддерживаю ;)

Deomenator, не ставил, но думаю должно работать.

Коллектив WebNine Young (w9y)
№ 11. 15-11-2011 06:13 Deomenator из групы: Посетители сказал :
Спасибо поставил на 9.4 полет нормальный:)
№ 12. 15-03-2012 13:08 Kinozal из групы: Посетители сказал :
Здравствуйте!!!!!
А у меня на DLE 9,5 нет первой строчки что делать???

Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.

Юзер панель
Я тебя не знаю!
Зарегистрируйся, либо

войди под своим логином!

Fuck, я забыл свой пароль!

Восстановить данные =0
Новое на сайте
Известная социальная сеть Instagram приступила к тестированию новой...
Недавно, в приложения для Android и iOS социальной сети Twitter была...
Недавно, в Google "Мой бизнес" разработчики добавили новейший способ, как...
Недавно стало известно о том, что соцсеть Facebook по упоминанию в русских...
Недавно, представитель корпорации Google, Джон Мюллер (John Mueller)...
Голосуем

Ваша любимая CMS?


DataLife Engine
WordPress
Joomla
Drupal
LiveStreet
UCOZ
Самопис
Php+Includ
Статика