Хороший форум на Друпале - миф или реальность?

Аватар пользователя KCEOH KCEOH 3 августа 2007 в 22:13

Все, кто тесно работал и работает с друпалом, знают один из его главных минусов - плохая поддержка форумной системы.

Замечу, что все нижесказанное в некоторой мере относится и к блогам друпала, ибо форум и блог во многом похожи. Например, управление комментариями и смайлики.

До этого уже несколько раз делались попытки осветить эту проблему, но... кроме [url=http://drupal.ru/blog/982]Natalie[/url], никто глобально за проблему и не брался...

В ее цикле статей указываются 2 пути - форум родной и форум сторонний (VBulletin, CMF, etc). Мне тоже интересен первый путь, т.к. второй уже испробован, но не понравился - неудобно 2 продукта поддерживать, и форумы тяжелые (лично мне больше нравится форумный движок [url=punbb.org]PunBB[/url], который вообще в данный момент не имеет интеграции с друпалом).

Данную статью вначале я планировал написать, как продолжение к статьям Натали. Однако, чуток поразмыслив, пришел к выводу - слишком уж разные они получатся.

У Натали больше ориентация была на новичков, было все доступно и пошагово расписано. Мне же, более всего, требовалась практичность, функциональность. Где-то в мае была опубликована [url=http://drupal.ru/node/5696]третья статья[/url], но, кроме воды, я там ничего не увидел (надеялся прочесть про описание нужных модулей). Как говорится - не нравится - сделай сам.

После длинного вступления - что брал за основу:
[list=1]
[*]Обеспечить максимальное приближение к современным форумам, т.е. превратить [i]это нечто[/i] в привычный форум.
[*]За идеальный форум брался PunBB, минимализм которого потрясает многих. Smile Тем не менее, обращалось внимание на необходимые фишки, вроде закачки файлов и модерирования.
[*]Статья предназначена отнюдь не для новичков, необходимы знания по установке модулей, их настройке, "прикручиванию", разрешению для пользователей. Русификация даже не затрагивается. Wink
[*]Статья представляет собой скорее набор ссылок "куда-копать", нежели подробное руководство.
[*]В списке перечисляются: вначале самые важные форумные свойства, далее идут менее важные, в конце - просто "удобности" и навороты.
[*]Предполагается, что форум уже более-менее настроен (по тем же статьям Натали).
[/list]

Как получить хороший форум - по пунктам:

[list]
[*][url=http://drupal.org/project/bbcode]BB-Code[/url].
Важный атрибут любого форума. Лично для меня форум без bb-кодов - не форум.
[*]WYSIWYG / удобный редактор.
Предпочтения отдаю [url=http://drupal.org/project/bueditor]BUEditor[/url] + [url=http://drupal.ru/node/6892]кнопки[/url]. Можно использовать [url=http://drupal.org/project/quicktags]quicktags[/url], как более простой и легкий ему аналог. Желающие могут поискать информацию по TinyMCE, FCKEditor, HTMLArea.
[*]Модерирование форума, настройки доступа.
Организуется все это дело с помощью модуля [url=http://drupal.org/project/forum_access]Forum Access[/url] и необходимого для его работы [url=http://drupal.org/project/acl]ACL (Access control list API)[/url].
При создании контейнера можно указать, кто может его просматривать. При создании форума - уже больше настроек. Можно распределить какие группы могут просматривать/писать/редактировать/удалять сообщения. Модераторы для форума устанавливаются только по никам, по группам нельзя. Т.е. если у вас много форумов, то придеться для каждого указывать модератора, нельзя указать группу глобальных модераторов.
Также может пригодиться модуль [url=http://drupal.org/project/taxonomy_multi_edit]Taxonomy multi edit[/url] - для массового перемещения топиков из одного форума в другой.
[*]Жалоба, сообщить модератору.
Реализуется благодаря модулю [url=http://drupal.org/project/abuse]Abuse[/url].
Очень удобный модуль, можно использовать 2 типа жалобы - просто сообщить модератору(report abuse) и прямая жалоба(direct flag). Во втором случае сообщение, о котором сообщается, сразу же скрывается от пользователей. Такую возможность, например, можно дать активным пользователям форума.
В админке все тоже продумано до мелочей. Выводится текст жалобы, текст сообщения, и кнопки с действиями (разрешить / удалить / сообщить на e-mail об этом пользователю, на которого жалуются / забанить его). Употреблю журнальную фразу - модуль из раздела must have.
[*]Управление темами и сообщениями (комментариями).
Иначе говоря - перекинуть сообщения в другую тему, создать из сообщения - тему. Все это (и немножко еще другого) можно сделать с помощью [url=http://drupal.org/project/comment_mover]Comment mover[/url].
У него есть только пара существенных недостатков. Первый заключается в том, что действие можно осуществлять только над одним сообщением (нельзя выделить кучу, и отправить их в другую тему). А второй (скорее т.н. багофича) - что родительские сообщения тянут за собой всех детей. Таким образом, утаскивается в другой топик целая ветка, хотя нужно только одно родительское бывает. Хотя этот недостаток и решается, путем выполнения лишней работы.
Прочтение Readme данного модуля сэкономит много нервов. Крайне неудобный и сложный для понимания модуль, ИМХО.
[*]Смайлики.
Ну тут все просто. Слили модуль [url=http://drupal.org/project/smileys]Smileys[/url], активировали, настроили как надо (применять для нод / комментов, отображать панельку со смайлами), активировали его в фильтрах (форматах ввода).
[*]Аттач, прикрепление файлов.
Удобный модуль [url=http://drupal.org/project/comment_upload]Comment upload[/url].
Активируем модуль, указываем права (кто может закачивать файлы), и в типах материалов указываем для каждого материала - можно ли аттачить файлы к комментариям. Минус модуля в том, что нельзя указать типы и размеры файлов.
[*]Личка, личные сообщения.
Модуль [url=http://drupal.org/project/privatemsg]Privatemsg[/url].
Минимум настроек, максимум функциональности. Из настроек - количество сообщений на странице, таймаут для защиты от флудеров, возможность создать сообщение-приветствие для новых (регистрирующихся) пользователей. На данный момент (август 2007) лучше скачать стабильную версию 1.8, ибо 2.х, которая в разработке - сильно кривая.
[*]Подписка.
Пока не сильно занимался этим вопросом.
Копать в сторону [url=http://drupal.org/project/subscriptions]Subscriptions[/url], [url=http://drupal.org/project/simplenews]Simplenews[/url], [url=http://drupal.org/project/notify]Notify[/url].
[*]Ссылка "Цитировать" для комментария.
Обеспечивается модулем [url=http://drupal.org/project/quote]Quote[/url].
В него настройках можно еще указать то, у каких типов материалов ее выводить. По сути - просто обрамляет цитируемый текст кодом [quоte=автор]текст[/quоte]
[/list]

В целом - уже получается приличный форум. Smile Только тему надо будет редактировать, и лишние ссылки убивать / выводить в виде рисунков.

На повестке дня (ака TODO):

[list]
[*] Подписка.
[*] Объявления администрации (блоками / модулем admin message).
[*] Дополнительные фильтры / bbcode (YouTube, флирк), [hide=XX].
[*] Мини-изображения при аттаче картинок.
[*] Версия для печати // скорее всего напишу отдельную статью.
[*] Голосования (реально ли как-нибудь совместить?).
[*] Глобальные модераторы.
[*] Подробно про WYSIWYG редакторы.
[*] Изменение темы. Нормальный постраничный вывод [1,2,3...9,10,Все](в списке тем), нормальный переход на последнее сообщение. Время в виде HH.MM.SS, а не XX минут назад.
[/list]

Комментарии

Аватар пользователя PVasili PVasili 3 августа 2007 в 22:51

Отличное начало!
5) Недавно поднимали вопрос
Dirol гм... Smile
9) На форуме уже был вариант решения как выводить в нормальном виде. Тут заядлых drupal-еров не переубедить, что небо должно быть голубым, а трава зеленой Smile

Аватар пользователя KCEOH KCEOH 3 августа 2007 в 22:57

5 - да, я читал. Но там еще есть некоторые нюансы, с которыми самому пришлось столкнутся (вывод комментов на печать, а не только ноды).
9 - комментарии в статьях Натали. Время точно, а вот насчет страниц - не припоминаю.

Аватар пользователя andron13 andron13 4 августа 2007 в 15:30

определённо, то что я лично давно с удовольствием бы узнал. огромный сэнкс.

Аватар пользователя vb vb 4 августа 2007 в 18:53

Чорного кобеля не отмоешь до бела Smile
А надо.
КСЕОН, отличная статья.
С удовольствием познакомлюсь со всеми твоими мыслями.

Аватар пользователя Mpakobec Mpakobec 5 августа 2007 в 23:04

PVasili, большое спасибо за тему.
Ща буду экперементировать.
(Эт ток у мну так бывает, открывал http://drupal.ru, что бы задать именно этот вопрос)

Аватар пользователя dm66 dm66 6 августа 2007 в 9:41

Спасибо за статью!
Для меня очень актуально, сам на этой неделе собирался разбираться с друпаловским форумом.

Аватар пользователя Krotty@drupal.org Krotty@drupal.org 7 августа 2007 в 12:32

Небольшие комментарии:

5. Жалоба, сообщить модератору.
Реализуется благодаря модулю Abuse.

Этот модуль к сожалению на данный момент не доведен до ума, в нем есть критические ошибки, что не позволяет использовать весь задуманный автором функционал.

7. Аттач, прикрепление файлов.
Удобный модуль Comment upload.
Активируем модуль, указываем права (кто может закачивать файлы), и в типах материалов указываем для каждого материала - >можно ли аттачить файлы к комментариям. Минус модуля в том, что нельзя указать типы и размеры файлов.

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

Аватар пользователя Ainur Ainur 7 августа 2007 в 15:25

KCEOH, молодец, подробно все описал, не знаю что добавить.

Глобальных модераторов можно сделать ролью, и через forum access дать ей доступ на модерирование всех форумов. И еще, для модерирования, очень нужный модуль – comment mover

И еще, такая мелочь, но мне очень не нравиться как сделаны подписи в Друпале, есть хороший модуль который исправляет подписи на динамические для 4 и 5 версий (как известно подпись лепиться в тело комментария на фазе его создания, и если пользователь её изменят, в старых постах остается старая подпись) на сколько я знаю в 6-ой версии подписи динамичны, и их вообще можно отключить. Вот сам модуль: signature

Вы кстати попробуйте установить этот ACL и Forum Access сделать приватные форумы, запостить несколько постов, а потом вырубить ACL и Forum Access, создать пост, и попытаться открыть его анонимным пользователем.

Кстати родился Drupal именно как BB Smile

p.s.
Подписка – subscriptions, рекомендую!

Аватар пользователя KCEOH KCEOH 8 августа 2007 в 1:46

2 Krotty@drupal.org
Мда, критических ошибок там немало однако... Не посмотрел, спасибо за замечание.
2 Ainur
В упор не мог найти, где там выставляются права роли, только определенному юзеру.
Про comment mover - пункт 5 повнимательнее почитай Wink

Quote:
Вы кстати попробуйте установить этот ACL и Forum Access сделать приватные форумы, запостить несколько постов, а потом вырубить ACL и Forum Access, создать пост, и попытаться открыть его анонимным пользователем.

А еще можно вырубить модули forum и comment и тоже попытаться посмотреть. Smile

Аватар пользователя Ainur Ainur 8 августа 2007 в 15:58

А еще можно вырубить модули forum и comment и тоже попытаться посмотреть. Smile

Вы не на Петросяна случайно работаете?
Content Not Viewable When ACL Disabled and Not Logged In

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

Создавая форум, выставляются какие роли могут читать, создавать, изменять или удалять темы, внимательней изучайте модули которые используете.

Аватар пользователя spartan spartan 12 августа 2007 в 3:07

Очень интересует вопрос производительности такого решения: будет ли он уступать в производительности форумным движкам, например SMF при наплыве 500 пользователей?

Аватар пользователя KCEOH KCEOH 13 августа 2007 в 1:12

Quote:
Создавая форум, выставляются какие роли могут читать, создавать, изменять или удалять темы, внимательней изучайте модули которые используете.

Там только свои сообщения редактировать можно. Модерирование тут не при чем.

2 spartan
В зависимости от того, что на форуме будет. Если сбоку (сверху / снизу) будут блоки, которые генерируют много запросов, то может и уступать будет. Вообще, сравнение лучше бы проверить на практике, тут и от сервера много что зависит, от его настроек. С SMF не работал, не знаком, так что даже примерно прикинуть не могу его производительность.

Аватар пользователя apple_rom apple_rom 13 августа 2007 в 1:30

Также интересует тема производительности - при установке Forum Access и задании различных прав для разных ролей и форумов скорость загрузки страницы форума стремится чуть ли не к минуте. Правда, после загрузки первой страницы она резко увеличивается, и тормоза почти не заметны. Но выдержать первую загрузку нервов мало кому хватит.
Аналогичное поведение ("первая загрузка" измеряется десятками секунд, после - относительно нормально) - полностью справедливо и для Taxonomy Access, TAC_lite (после задачи прав). Это есть "нормально", либо "я что-то делаю не так"? Описанное на форуме, где 4000 юзеров, 50 подфорумов, Drupal 5.2, collocation.

Аватар пользователя shamaner shamaner 3 октября 2007 в 10:19

лучше бы сказали как cmf внедрить не как фрейм, а ввиде как блок.
С уважением Александр

Аватар пользователя Natalie Natalie 16 декабря 2007 в 23:39

Хорошая статья! Я собиралась в конечном итоге написать обзор нужных модулей, но не успела по разным причинам.

Хочу добавить flatforum - это скорее тема, чем модуль, для приведения форума в приличный вид (более похожий на стандартные phpBB и иже с ними)

Аватар пользователя clubwave.ru clubwave.ru 3 апреля 2008 в 23:30

advanced forum в последний версиях реально творит с форумом чудеса, как и с нагрузкой на сервер Sad

Аватар пользователя kwas kwas 18 августа 2009 в 16:52

Спасибо за статью. А как аватары реализовать. Без них форум - не форум.
и что-то после добавления модуля ACL ничего не изменилось. Модуль активировал. Он попросил перестроить права доступа ко всему, что уже было на сайте, согласился, но никаких видимых изменений не обнаружил.

Аватар пользователя U_Ku_Shu U_Ku_Shu 16 декабря 2010 в 19:26

Не вспомнили про Author pane для приведения в нормальнЬІй вид профиля в форуме.

Не вспомнили про Advanced Forum для приведения в нормальнЬІй вид самого форума.

Не замеил вспоминали про Forum Signatures или нет... но на всякий случай пишу)))

Подписка. -- Subscriptions

Дополнительные фильтры (YouTube) -- video_filter

Голосования (реально ли как-нибудь совместить?). -- скорее всего через Advanced Voting или Voting API

Глобальные модераторы. -- А стандартнЬІими средствами почему не сделать? Оо

>>А как аватары реализовать.
Включить в настройках друпала аватарки))) По стандарту включено в друпале. Сам не сначала нашел)))

Аватар пользователя clubwave.ru clubwave.ru 21 декабря 2010 в 21:01

"U_Ku_Shu" wrote:
Не вспомнили про Author pane для приведения в нормальнЬІй вид профиля в форуме.
Не вспомнили про Advanced Forum для приведения в нормальнЬІй вид самого форума.

tpl + css творят чудеса

Аватар пользователя petrovnn petrovnn 22 января 2011 в 1:42

А я думал что если речь заходит о форуме на друпале, то главным вопросом будет производительность.

Насчет BB-Code с автором не согласен, и предпочитаю BUeditor + markdown. Маркдаун пусть не такой распространенный, но более правильный с тз. конечного пользователя (тупо синтаксис проще), и поэтому более перспективный (хотя я конечно понимаю что статья 3.5 летней давности и автор может сегодня сказал-бы по-другому).

Насчет маркдауна могу аргументировать, почему он лучше BB-code, но это если будут желающие слушать мои деферамбы.

Аватар пользователя kwas kwas 9 февраля 2011 в 19:29

"petrovnn" wrote:
если будут желающие слушать мои дИфИрамбы

Сел в первый ряд. Слушаю

Аватар пользователя petrovnn petrovnn 23 марта 2011 в 17:56

"kwas" wrote:
Сел в первый ряд. Слушаю

Вопрос: какие элементы используются в сообщениях форума в подавляющем большинстве случаев?

Аватар пользователя Funtik44 Funtik44 22 июля 2011 в 11:45

Подскажите, при помощи какого модуля я могу скрыть некоторые форумы с главной страницы форума (не сайта а форума)? Хочу сделать так, чтобы эти скрытые форумы были видны только после того, как провалишься в родительский!

Аватар пользователя eshatos eshatos 10 сентября 2013 в 12:46

Неужели проблема таки не решилась с форумом?
Подскажите, пожалуйста, можно ли как на Друпале 7 на форуме сделать опцию перемещения комментов из темы в тему?

Аватар пользователя CSN_Tails CSN_Tails 10 сентября 2013 в 15:07

А где в друпале форум? Оо
Я вижу ноды в табличном виде, объединённые категориями.

Аватар пользователя toshic toshic 10 сентября 2013 в 16:38

"eshatos" wrote:

А зачем? Темы можно переносить, а камменты для чего тасовать?

Аватар пользователя toshic toshic 10 сентября 2013 в 16:40

"CSN_Tails" wrote:

Ну и что? Или нужен функционал которым никто особо пользоваться не будет?

Аватар пользователя Niklan Niklan 10 сентября 2013 в 16:43

я удивлен что его из Drupal 8 еще не выпилили. Это как дефолтный модуль Blog (который выпилили).
Все делается созданием своего типа ноды + Views + чутка напильника и все.

Аватар пользователя CSN_Tails CSN_Tails 10 сентября 2013 в 17:46

"toshic" wrote:
Ну и что? Или нужен функционал которым никто особо пользоваться не будет?

Ээээ... Что "ну и что?" ? Smile
Я говорю, что друпал это не форум и ждать мощный форум на нём а-ля ИПБ, КсенФоро не следует.

Аватар пользователя CSN_Tails CSN_Tails 10 сентября 2013 в 17:47

"Niklan" wrote:
я удивлен что его из Drupal 8 еще не выпилили.

Не не. Форум выпиливать не нужно. Мне модуль нужен. Smile
Тем более на самом друпке.орг форум очень большой.

Аватар пользователя Niklan Niklan 10 сентября 2013 в 18:09

"CSN_Tails" wrote:
Не не. Форум выпиливать не нужно. Мне модуль нужен. Smile
Тем более на самом друпке.орг форум очень большой.

Суть в том, что модуль по сути ничего не дает. Все воссоздается на раз-два.

Аватар пользователя graker graker 10 сентября 2013 в 18:58

Так оставили как раз чтоб не воссоздавать Smile Выпиливать конечно не надо, а в контрибы переместить - не повредило бы.

Аватар пользователя Niklan Niklan 10 сентября 2013 в 19:12

"graker" wrote:

Так оставили как раз чтоб не воссоздавать Smile Выпиливать конечно не надо, а в контрибы переместить - не повредило бы.


Ну блог то выпилили, а он явно почаще использовался.

Аватар пользователя graker graker 10 сентября 2013 в 19:28

Насчет блога очень сомневаюсь, что почаще. Если что и воссоздавалось за пять минут, то это блог. А его куда, в контрибы или насовсем?

Аватар пользователя Niklan Niklan 10 сентября 2013 в 21:02

"graker" wrote:

дак и форум тудаже. Глядишь развитие получит и новое дыхание.

Аватар пользователя multpix multpix 10 сентября 2013 в 21:42

"Niklan" wrote:
дак и форум тудаже

к этому и идет.
в ядре сущности, поля, вьюсы и пути (универсальный мегакомбайн),
все остальное - в контриб.

по сабжу - формат "форум" вымирает (или эволюционирует)
reddit повеселее будет.

Аватар пользователя graker graker 10 сентября 2013 в 21:44

Ну да, я и написал - в контрибы бы не повредило.
За последние года полтора включал его всего для двух сайтиков, и то в одном потом выключили за ненадобностью.

Аватар пользователя Виктор Степаньков ака RxB Виктор Степаньк... 10 сентября 2013 в 22:39

"graker" wrote:
Ну да, я и написал - в контрибы бы не повредило.

мы уже имеем адванцыд форум в контрибе.
И шо на деле?
Такое блеать уг, что "друпал говнище" хочется писать на каждом заборе

Аватар пользователя graker graker 10 сентября 2013 в 22:45

Так это ж разное, forum - основа, advanced - набор прибамбасов разной степени осмысленности.

Аватар пользователя PVasili PVasili 10 сентября 2013 в 23:56

"RxB" wrote:
хочется писать на каждом заборе

Вить, чего поливать то? Ну выкатил бы нормальный модуль для форума и камментов (а то один Андрей мучит их в 8-ке) :). Опыт же есть. Ну и имел бы заслуженные медали и почести :). А так все мучаются с тем, что есть Sad

Аватар пользователя Виктор Степаньков ака RxB Виктор Степаньк... 11 сентября 2013 в 1:12

"PVasili" wrote:

Вить, чего поливать то? Ну выкатил бы нормальный модуль для форума и камментов (а то один Андрей мучит их в 8-ке) :).


Куда выкатил?
Рвать задницу на орге и доказывать что я не верблюд - желания не имею, так же как и SVN-акка от славных времён.
Тот же упомянутый Энди Постников адепт системы "Зачем писать новое, помоги существующему проекту", читать прошлое предложение.

Аватар пользователя PVasili PVasili 11 сентября 2013 в 1:39

"RxB" wrote:
Куда выкатил?

Мне тоже, общий бардак и каша на d.org + выдача малиновых(и других) штанов не нравится (тем более - полно людей в жёлтых штанах выкладывающих такое... что волосы (и не только) встают)
Но есть же git, песочница, личный блог...

"RxB" wrote:
"Зачем писать новое, помоги существующему проекту"

Если существующий в полном тупике и автор неадекватный (что тоже не-редкость) - зачем помогать?
Полно же модулей с абсолютно одинаковым функционалом.
Комерц же пилят пишут, но убер тоже жив.

Аватар пользователя Виктор Степаньков ака RxB Виктор Степаньк... 11 сентября 2013 в 2:06

"PVasili" wrote:

Если существующий в полном тупике и автор неадекватный (что тоже не-редкость) - зачем помогать?


А это спроси у названного выше товарища.
Более половины контриба скорее мертвы чем живы.
Но легко появляется кто-нить шибко умный, который говорит что модуль новый не надо, лучше старый помоги допилить.

Аватар пользователя Natalie Natalie 29 сентября 2013 в 1:38

К сожалению, за все эти годы в отношении форума ничего не поменялось. Такое ощущение, что про него все забыли и пользуются чем-то еще. Действительно непонятно, зачем его вообще оставились в ядре в D8 (руки не дошли, наверное, учитывая все остальное).

Навскиду в D7 я бы пользовалась Entity API (custom entity и всякий функционал), Views и Entity Reference. Возможно Organic Groups для контроля за доступом и правами. Причем Views и Entity Reference входят в ядро D8, так что посмотрим, может кто-то возьмется. Другое дело, что неизвестно, насколько форумы вообще будут актуальными через пару-тройку лет.

Аватар пользователя toshic toshic 29 сентября 2013 в 4:00

Ну мне форум на друпале нравится. слегка темизировал по мелочи,вернее подправил стили в css и нормально. свои функции выполняет.