Хабрахабр - Джентельменский набор модулей для Drupal 7

Главные вкладки

Аватар пользователя gaydabura gaydabura 7 августа 2012 в 13:57

Статья навеяна джентльменом, который написал этот топик.
Я занимаюсь разработкой сайтов с использованием данной Drupal около 4 лет, и у меня сложился свой набор модулей, которые использую на 9 из 10 проектов.

1. Администрирование
Тема админки - на Ваше усмотрение. На drupal.org большой выбор административных тем.
Модуль Administration menu - отличная разработка, но как правило он подходит разработчику, а не администратору сайта, и уж тем более не менеджеру, для них лучше использовать SimpleMenu (и, да, не поленитесь создать отдельное меню для них)
Модуль Inline Messages - просто украшательство, подобных модулей достаточно много, но в целом он бесполезен для разработчика. (Вам шашечки или ехать?)
Модуль Content Access — нет.
Модуль Comment Access — и нет.
Дело в том, что данные два модуля контролируют доступ к каждой ноде, о чем делают соответствующие записи в таблицы. Таким образом если у Вам на сайте 10-20-50 тысяч нод, то производительность заметно снизится.
Рекомендованные модули:
Pathauto - В связке с Global Redirect, Transliteration и другими поможет Вам создать человекочитаемые URLы и решим много задач, поставленным СЕОшником.
Advanced help - Поможет Вам справкой и подсказками в тех местах где Вы не знаете что делать. При переносе сайта в продакшн выключите этот модуль.
Override Node Options - поможет Вам настроить форму редактирования/добавления ноды так, чтобы не пугать заказчика.

Посещаемость и аналитика сайта

Стандартный модуль Statistics может быть расширен модулем Chart API
Google Analytics. Только хардкор! Любые модули, которые считают статистику внутри Drupal - записывают эти данные в таблицы, не удивляйтесь что после хабраэффекта у Вас БД достигнет размера в гигабайт-два.

Общение - Тут сказать нечего - нужно сделать свой Вконтактик? пользуйтесь чем хотите.

Регистрация пользователей

Email Registration, LoginToboggan, Ajax Login/Register - Зачем плодить сущности, LoginToboggan успешно решает массу вопросов.
Быстрое определение занятости логина и почты при регистрации — Friendly Register -
Простой модуль для базовой защиты от спам-ботов — Trick Question - Mollm или ReCaptcha, и даже не обсуждается.
Если на сайте опубликовано что-то важное, что необходимо прочитать, то с помощью модуля Login Destination можно при залогинивании перенаправить пользователя на нужную страницу - LoginToboggan

Представления и внешний вид

Views — думаю, не нуждается в представлении. Штука полезная и мощная для темизации вывода нод. - Да.
Модули Media и Media Gallary — удобное сочетание для создания галерей (фото, видео) на сайте. Если к ним добавить модуль Embedded Google Docs Viewer, то можно создавать галереи с документами и удобным просмотром.
Вы сайт делаете или елку наряжаете? Media очень "тяжелый" модуль, если у Вам нужно вставить картинку, создать фотогалерею, то модулей Field (в ядре) и какого нибудь LightBox2 вполне хватит. (Все таки Вам шашечки или ехать???)
Модуль Mobile Theme позволяет выбрать тему сайта для мобильных устройств отдельно от главной. Responsive design. Даже не обсуждается. Если Вы хотите получить доступ к устройству, то - Phonegap или другие.

НодыСущности

Если есть желание расшить функциональность файловых (файл и изображение) полей ноды, то вот эти модули удобную множественную загрузку — Multiupload Imagefield Widget и Multiupload Filefield Widget
Если Вам нужно всего лишь украсить форму загрузки файлов/изображений, (а именно это предоставляют вышеперечисленные модули) вспомните, что в ядре D7 уже есть jQuery и jQueryUI. Имеет смысл использовать.
(Для ленивых - IMCE, Image FUpload, замечательный SWFUpload и мой любимый Plup) И кода меньше, и нагрузка меньше и красота....

Также полезный модуль, построенный на сочетании Form API и Field API Drupal — Field collection позволяет представить форму в виде отдельного поля ноды.
Вы заблуждаетесь сами и вводите в заблуждение других. Field collection позволяет использовать в поле сущность, состоящую из других полей. Модуль сложный, как для понимания, так и для последующей работы. Я его пробовал использовать, но поистине должна быть очень сложная архитектура, чтобы возникла необходимость в данном модуле.

Разработка

Модуль Devel — ок
jQuery Update — В Drupal 7 используется jQuery версии 1.4.4 Обновление до более свежей версии Вам может понадобится в очень редких случаях (при использовании Twitter Bootstrap например). Также учтите, если Вы все таки обновляетесь до более свежей версии, то у Вас возникнет проблема, описанная тут. Решение там же. Для тех, кто все таки понимает, что патчить ядро нельзя - вот небольшой модуль, который фиксит эту проблему. Просто установите и включите его.
CTools — важный модуль, обеспечивающий различные API(например, упрощение создания многоходовых форм).
CTools - действительно важный модуль, но в первую очередь это API, которое предоставляет богатый выбор функций, AJAX, Modal forms, и многие другие. С помощью этого модуля легко делать всплывающие окна (регистрация/логин), делать всякие проверки (Friendly Register не нужен) и многое-многое другое. Просто загляните в ctools/ctools_ajax_sample хотя бы.

Перевод

Отечественный модуль — Russian Easy Translate - зачем?
Заокеанский модуль, расширяющий стандартные возможности перевода в Drupal — Localization Update - Вполне справляется.
Ну и конечно Вы не забыли i18n - без которого два вышеперечисленных модуля не имеют смысла. Вам шашечки или ехать Вам хочется все по русски читать, или Вы действительно говорите о мультиязычности ?

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

Ссылок на мои работы не будет, чтобы не сочли за рекламу, кому интересно в личку пришлю.

P.S. Отвратительная статья, прочел и понял откуда у нас появляются криворукие имплементаторы, гордо величающие себя программистами. Да, это упрек. Лично как к человеку, к Вам претензий нет.
P.P.S. Презентация по musthave модулям для 6ки https://docs.google.com/present/edit?id=0AQNewrBuGbKjZGRmYmNnZDZfMTM5M3p...

Комментарии

Аватар пользователя xxandeadxx xxandeadxx 7 августа 2012 в 15:15

"gaydabura" wrote:
то производительность заметно снизится

"заметно" это на сколько?

"gaydabura" wrote:
не удивляйтесь что после хабраэффекта у Вас БД достигнет размера в гигабайт-два.

если не включать опцию access log в Statistics, то никаких гагабайтов не будет

"gaydabura" wrote:
Если Вам нужно всего лишь украсить форму загрузки файлов/изображений, (а именно это предоставляют вышеперечисленные модули)

вышеперечисленные модули делаю html5 multiupload, а не украшают форму

"gaydabura" wrote:
i18n - без которого два вышеперечисленных модуля не имеют смысла

враньё

в общем неуд.

Аватар пользователя PVasili PVasili 7 августа 2012 в 16:08

Денвенра нет? - в топку весь список Smile
Т.с сделайте что-нибудь полезное, кроме перечисления того, что узнали сами, а все остальные знают давно...