Началось всё с того, что я решил провести конкурс среди читателей сайта webonlife. Как понятно из названия статьи чтобы победить в конкурсе нужно активно комментировать статьи сайта. Про условия конкурса я уже писал в рассылке. Сейчас поговорим о технической стороне. Что сложного в том чтобы сделать топ комментаторов? Поставил модуль, настроил и вперёд. На самом деле всё не так просто. Модуль есть, но он только под шестёрку. Топ 10 Гоши и Яши навевали тоску. Поиск по drupal.ru окончательно убедил в том что просто и быстро не получиться. В итоге, уже в который раз, выручил модуль Views.
Создаём представление в котором будет показывать комментарии. Да именно комментарии. Можно выбрать пользователей(мой первый опыт) или контент. И потом наладить связи. Мы сделаем всё с минимумом движений. Итак создаём блок который будет выводить комменты. Формат отображения не важен главное чтобы выводились поля.
Нам понадобиться только одно поле но два раза. Прежде чем его добавить в расширенных настройках включаем агрегацию. При первом добавлении поля "Комментарий: Автор" выбираем тип агрегации "группировать результаты". А второй раз добавив это же поле тип агрегации выбираем "счётчик". Таким образом мы сперва сгруппировали все комменты автора, а потом их подсчитали. В критериях сортировки также выбираем счётчик для поля "Комментарий: Автор" и сортируем по убыванию.
Пришел черёд фильтров. После создание представления у нас уже есть пара фильтров. Первый фильтрует только одобренные комментарии, второй комменты только для опубликованного содержимого. Что из этого оставить решать вам. Я оставил только первый. На этом можно было бы закончить, но посмотрев на результат я обнаружил что я лидирую в топе с большим отрывом. Топ комментаторов задумывался для посетителей сайта, а не для моего ЧСВ. Нужно отфильтровать зарегистрированных пользователей, тем более что я здесь один такой. Прежде чем перейти к фильтрам добавим связь "Комментарий: Автор". Теперь добавляем фильтр "Пользователь:Роли".
Финальный скрин представления
- Войдите, чтобы оставлять комментарии
В интернет ходит мнение, что
В интернет ходит мнение, что разные модули нагружают сайт и это плохо может сказаться на посещаемости сайта, вы как к этому относитесь, лучше поставить по вашему способу с модулем или поискать способ без модуля???
Всё зависит от уровня
Всё зависит от уровня подготовки и прямоты рук. Про Wordprees ничего не могу сказать. Я так и не собрался его попробовать.
Что касается Drupal нагрузку не замерял но не думаю что она сильно увеличиться потому что есть в Drupal кэширование.
Теперь о модуле при помощи которого был сделан топ комментаторов. Views - это один из тех модулей которые делают Drupal самым крутым движком. Благодаря ему можно отправлять запросы к базе данных просто нажимая кнопочки. Начиная с восьмой версии движок из коробки идёт с этим модулем, так что можно его считать не доп модулем, а модулем ядра.
Кстати слайдшоу на главной и и блок новостей справа и изменённый вывод главной страницы - Всё это сделано при помощи модуля Views.
Как я понял, это
Как я понял, это универсальный модуль, в котором много функций, так как ты с помощью его сколько сделал полезных дел.(Топ кометаторов, слайдшоу, блок новостей).