• DONATE to NULLED!
    Форуму и его команде можно помочь, мотивировать модераторов разделов.
    Помогите модератору этого раздела killoff лично.

Помощь Снос комментариев в коде

Статус
В этой теме нельзя размещать новые ответы.

-НиК-

Постоялец
Регистрация
11 Фев 2007
Сообщения
163
Реакции
130
Ковырял DLE 9, нашёл где хранятся комментарии к картинкам, видео, спойлеру . . .
\engine\classes\parse.class.php
HTML:
		$txt = preg_replace( "#<!--ThumbBegin-->(.+?)<!--ThumbEnd-->#ie", "\$this->decode_thumb('\\1')", $txt );
		$txt = preg_replace( "#<!--TBegin-->(.+?)<!--TEnd-->#ie", "\$this->decode_newthumb('\\1')", $txt );
		$txt = preg_replace( "#<!--QuoteBegin-->(.+?)<!--QuoteEBegin-->#", '[quote]', $txt );
		$txt = preg_replace( "#<!--QuoteBegin ([^>]+?) -->(.+?)<!--QuoteEBegin-->#", "[quote=\\1]", $txt );
		$txt = preg_replace( "#<!--QuoteEnd-->(.+?)<!--QuoteEEnd-->#", '[/quote]', $txt );
		$txt = preg_replace( "#<!--code1-->(.+?)<!--ecode1-->#", '[code]', $txt );
		$txt = preg_replace( "#<!--code2-->(.+?)<!--ecode2-->#", '[/code]', $txt );
		$txt = preg_replace( "#<!--dle_leech_begin--><a href=[\"']([url]http://|https://|ftp://|ed2k://|news://|magnet:)?(\S.+?[/url])['\"].*?" . ">(.+?)</a><!--dle_leech_end-->#ie", "\$this->decode_leech('\\1\\2', '\\3')", $txt );
		$txt = preg_replace( "#<!--dle_video_begin-->(.+?)src=\"(.+?)\"(.+?)<!--dle_video_end-->#is", '[video=\\2]', $txt );
		$txt = preg_replace( "#<!--dle_video_begin:(.+?)-->(.+?)<!--dle_video_end-->#is", '[video=\\1]', $txt );
		$txt = preg_replace( "#<!--dle_audio_begin:(.+?)-->(.+?)<!--dle_audio_end-->#is", '[audio=\\1]', $txt );
		$txt = preg_replace( "#<!--dle_image_begin:(.+?)-->(.+?)<!--dle_image_end-->#ies", "\$this->decode_dle_img('\\1')", $txt );
		$txt = preg_replace( "#<!--dle_youtube_begin:(.+?)-->(.+?)<!--dle_youtube_end-->#is", '[youtube=\\1]', $txt );
		$txt = preg_replace( "#<!--dle_flash_begin:(.+?)-->(.+?)<!--dle_flash_end-->#ies", "\$this->decode_flash('\\1')", $txt );
		$txt = preg_replace( "#<!--dle_spoiler-->(.+?)<!--spoiler_text-->#is", '[spoiler]', $txt );
		$txt = preg_replace( "#<!--dle_spoiler (.+?) -->(.+?)<!--spoiler_text-->#is", '[spoiler=\\1]', $txt );
		$txt = str_replace( "<!--spoiler_text_end--></div><!--/dle_spoiler-->", '[/spoiler]', $txt );
Возникло желание снести их, дабы не загромождали код.
Но меня смутили конструкции типа:
HTML:
<!--dle_image_begin:(.+?)-->(.+?)<!--dle_image_end-->
На странице они делают вот такой паровоз:
HTML:
<!--dle_image_begin:http://сайт.ру/uploads/posts/2010-12/1293559428_картинка.jpg|--><img src="/uploads/posts/2010-12/1293559428_картинка" alt="Описание картинки" title="Описание картинки"><!--dle_image_end-->
Вопрос на засыпку, нахрена в комментарий дублировать адрес картинки?
Движок как-то использует этот дубль в комментарии или всё же комментарии типа <!--dle_image_begin: (.+?)--> можно снести со спокойной душой?
 
чё себя мучать такими вопросами... сделай резервную копию, снеси комментарии и посмотри... мне кажется, что комментарии можно спокойно удалять
 
вырезал их с кода шаблона и отключил в админке возможность коментировать. И не придумывайте велосипед
 
такой код не только в комментах, но и в полных новостях с картинкой например, согласен надо резать, только как автоматом все сделать?
 
открываешь index.php

в конце находишь
Код:
echo $tpl->result['main'];

и меняешь на
PHP:
// для работы со страницей
$page=$tpl->result['main'];
// убираем вске коментарии из html кода
$page = preg_replace('/<!--.+?-->/s', '', $page);
// мало ли что еще заменить, я пути к шаблорнам правлю
// ...
//
// выводим страницу
echo $page;
 
ZCFD
После этого изменения перестала работать кнопка редактирования новости, кнопка удаления комментария, рейтинг новости и сортировка новостей.
Также заметил, что в версии для печати комментарии вокруг картинок не исчезли.
 
версия для печати - файл engine/print.php

а кнопки -- у меня в шаблоне нет js, вот в чем дело
PHP:
// для работы со страницей 
$page=$tpl->result['main']; 
// убираем вске коментарии из html кода 
$page = preg_replace('/<!--.+?-->/s', '', $page); 
// мало ли что еще заменить, я пути к шаблорнам правлю 
// ... 
// 
// выводим страницу 
echo $page;
убираем модификатор /s - и многострочные комментарии удаляться не будут, как раз те кусочки о которых ты говорил
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху