Сегодня я кратко опишу модули, которые должны присутствовать на каждом сайте. Некоторые из этих модулей улучшают юзабилити, другие предназначены для оптимизации сайта, а некоторые ускоряют и облегчают жизнь разработчикам.
Обязательные модули
- admin_menu - должен быть на каждом сайте, ускоряет навигацию по административным страницам сайта. Для любителей стандартного тулбара имеется модуль Administration menu Toolbar style (входит в состав модуля admin_menu);
- module_filter - изменяет вид стандартной страницы с модулями. Благодаря ему, поиск нужного модуля гораздо быстрее;
- l10n_update - автоматически обновляет переводы включаемых модулей;
- token - огромное количество модулей зависит от него. Позволяет формировать содержимое по шаблонам;
- transliteration - выполняет транслитерацию названий файлов и синонимов;
- pathauto - позволяет автоматически генерировать синонимы для нод, пользователей, таксономии и др.;
- subpathauto - позволяет автоматически генерировать синонимы учитывая вложенность путей. Модуль не обязательный, но на некоторых сайтах может пригодится;
- redirect - позволяет делать редиректы с одной страницы на другую;
- globalredirect - "склеивает" системные пути с их синонимами (если таковые имеются);
- xmlsitemap - как понятно из названия, модуль генерирует карту сайта;
- ctools - очень мощный модуль, от которого зависит большое количество модулей, в том числе Views, Panels, Rules, Display Suite;
- views - один из самых важных модулей, который облегчает и ускоряет разработку сайтов. С помощью этого модуля можно собрать 90% функционала сайта. К данному модулю написано огромное количество плагинов. Модуль немного сложен в понимании для новичков, но знать и уметь пользоваться им обязан каждый уважающий себя друпалер;
- captcha - модуль позволяет защитить сайт от ботов. Существует несколько модулей, выполняющих данную функцию, хотя бы один из них должен присутствовать на любом сайте;
- path_metatags - модуль позволяет очень гибко настраивать метатеги для страниц;
- metatag - альтернатива предыдущему модулю, так же позволяет настраивать метатеги для страниц, но на больших и сложных сайтах его возможностей может быть мало;
- path_breadcrumbs - позволяет очень гибко настраивать "хлебные крошки" на сайте. Модуль разработан тем же разработчиком, что и path_metatags и имеет схожий с ним интерфейс;
- node_convert - позволяет конвертировать ноды из одного типа в другой;
- bueditor - текстовый редактор для сайта. Разработчику данный модуль ничем не поможет, но жизнь редакторам облегчит;
- ckeditor - визуальный редактор для сайта, альтернатива предыдущему модулю. Существенным отличием от предыдущего является то, что модуль показывает изменение текста в процессе редактирования;
- imce - позволяет загружать файлы на сайт через редакторы.
Полезные модули, которыми должен уметь пользоваться каждый друпалер
- panels - позволяет брать рендер страниц на себя, тем самым повышая гибкость системы;
- pm_existing_pages - позволяет перекрывать существующие страницы на сайте;
- rules - позволяет настраивать действия, которые будут происходить при выполнении определенных условий;
- views_bulk_operations - позволяет выполнять массовые операции над сущностями. Очень полезен при настройке административного функционала;
- commerce - позволяет создавать интернет-магазины любой сложности. Функционал легко расширяется подключением дополнительных модулей;
- libraries - модуль предоставляет API для работы с подключаемыми библиотеками. От него зависит огромное количество модулей, пригодится на 99% сайтах;
- entity - модуль предоставляет API для создания и работы с сущностями;
- examples - большое кол-во модулей, которые демонстрируют возможности системы. В них можно найти 80% ответов на вопросы, изучив код.