Дерево комментариев для DLE v9.x
Предлагаю вашему вниманию хак для древовидного вывода комментариев.
Скрипт написан только под актуальные версии DLE, семейства 9.x
[Описание]
Скрипт не использует всем знакомые методы через parent_id и прочего подобного. Применена специализированная технология для построенная именно древовидных комментариев Nested Sets http://en.wikipedia.org/wiki/Nested_set_model
[Скриншоты]
На данном изображении показан пример построения древовидных комментариев на сайте dle-faq.pro Дизайном занимался его владелец, ПафНутиЙ.
Это демо сайт, на него я буду выдавать доступ для тестирования.
[Быстродействие]
Для вывода не используется никаких дополнительных запросов и не создается никакой нагрузки. Сложение, умножение, деление чисел и вывод тегов, как нагрузка не рассматривается. В запрос добавляются всего 3 параметра.
При добавлении комментария (ответа) делается 2 дополнительных запроса, при обычном добавлении – 1 запрос.
При удалении комментария добавилось 4 запроса и +1 запрос на удаление комментария внутри ветки (пересчет количества комментариев у пользователя).
[Возможности и особенности]
– Удаление комментария влечет за собой удаление всей ветки ответов.
– Возможность стирание комментария. При этом скрываться может как вся форма комментария, так и только текст сообщения. Вместо комментария выводится текст: «***Комментарий удален***». При этом само сообщение сохраняется и его может восстановить только член админ состава, имеющего права на редактирование всех комментариев.
– Если комментарий стерт, кнопка стирания не отображается.
– Стирать комментарий могут те, кто имеет права на редактирование всех комментариев.
– Окно добавления комментария (ответа) сделано в виде popup окна. Окно передвигаемое.
– Поддержка всех jQuery эффектов при добавлении комментария (ответа).
– При ответе на комментарий, есть возможность в самой форме добавления комментария выводить комментарий (с сохранением всех тегов), на который пишется ответ.
– Настройки дерева находятся на закладе настроек комментариев (настройки DLE).
– Сортировка комментариев производится по уровню вложенности.
– Объединение комментариев отключено, во избежание слияния ответов на разные комментарии.
– При цитировании комментария форма автоматически всплывает и в поле вводится цитируемый текст.
– Настройка количества выводимых комментариев на одну страницу работает, навигация остается, но желательно выводить все комментарии на одну страницу.
– При выводе «Последних комментариев» все комментарии имеют нулевой уровень вложенности. Кнопка «ответ» не отображается.
– При попытке ответа на удаленный/не существующий комментарий, будет выведена ошибка.
– В базу сохраняется полная иерархия вложенности комментариев (уровень вложенности может быть бесконечно большим), но при выводе уровень вложенности ограничивается параметром заданным в админке.
– Выводимые теги:
==[answer]…[/ answer] – кнопка ответа на комментарий;
==[com-clear]…[/com-clear] – кнопка стирания комментария;
=={level} – уровень комментария;
=={answer-count} – количество ответов у комментария.
[Демо]
_http://dle-faq.pro/
Заинтересованным выдам доступ на демо сайт с правами редактора.
[Условия продажи]
– Вы можете ставить дерево комментариев на любой Свой сайт. Передача скрипта третьим лицам запрещена.
– Для приобретения у вас должен быть Персональный Аттестат или BL>=20.
– Техподдержка и консультации по хаку бесплатно.
– Поддерживается семейство DLE только 9.x серии и старше.
[Условия продажи]
Стоимость: снят с продажи *
Установка и настройка: 5-20wmz **
[Контакты]
ICQ: 404-037-556
E-Mail: olalod@mail.ru
С Уважением, Олег Александрович a.k.a. Sander
* курс рубля высчитывается на момент покупки
* Стоимость установки зависит от существующей верстки комментариев. Если они «резиновые», то стоимость установки минимальная. Сама по себе установка не сложная, но объемная. При желании вы можете самостоятельно установить и настроить вывод комментариев, как это сделал ПафНутиЙ.