Использование скриптов в полной новости
Представляем вам очередной хак использование скриптов в полной новости для DLE 10.x итак если вы захотите встроить какой не будь пусть не большой скрипт непосредственно в сам текст полной новости к примеру, тогда эта процедура у вас не получится. Разработчики скрипта dle запретили использование или выполнение любого кода в новости для безопасности движка и вашего сайта, но если очень нужно тогда как быть? и что делать? вот тогда на помощь и приходит данный хак, также можете по смотреть у нас и другие хаки для dle возможно найдете для своего проекта интересное и полезное.
Если откроем engine/classes/parse.class.php и посмотрим примерно на 46 строку (нумерация в разных версиях может отличаться), то увидим следующее:
var $tagBlacklist = array ('applet', 'body', 'bgsound', 'base', 'basefont', 'frame', 'frameset', 'head', 'html', 'id', 'ilayer', 'layer', 'link', 'meta', 'name', 'script', 'style', 'title', 'xml' );
Здесь полный перечень того, что запрещает DLE вставлять в текст новостей. Теперь рассмотрим, как разрешить вставку кода на примере тега:
<script>
Установка:
1. Открыть engine/classes/parse.class.php и удалить , 'script' из строки:
var $tagBlacklist = array ('applet', 'body', 'bgsound', 'base', 'basefont', 'frame', 'frameset', 'head', 'html', 'id', 'ilayer', 'layer', 'link', 'meta', 'name', 'script', 'style', 'title', 'xml' );
2. Ниже найти и удалить все строки содержащие:
$source = preg_replace( "#<script#i", "<script", $source );
Все!
Чтобы проверить работает ли вставка скриптов в саму новость добавьте:
<script>alert("Hello World!");</script>
Опубликуйте статью и откройте ее на сайте. Если увидели всплывающее сообщение - поздравляем, все сделано правильно. По аналогии разблокируются и остальные теги.
- Версия DLE: 10.x
- Кодировка: utf-8, win-1251
- Категория: Хаки
- Автор: Артем Мáлков
- Источник:
Войдите на сайт
Все собранные средства будут переданы автору этой статьи - DEN
Сумма перевода от 10.00 рублей