Toute la puissance de Drupal repose sur son système de modules. En effet, il est livré « nu », bon nombre de fonctionnalités sont disponibles en tant que modules. Certains sont livrés de base avec le CMS, c’est le cas du moteur de recherche, du blog, ou encore de Taxonomie. Mais d’autres très important manquent pour réaliser un site complexe.
C’est pourquoi je vous propose ici une liste de modules pour Drupal 6 qui permettent de construire un site complexe et complet.
Développement
CCK (Content Construction Kit)
Premier plugin indispensable, CCK permet d’ajouter des champs personnalisés pour vos contenus. Il permet également de créer ses propres types de contenu (magasin, produit, …).
Plus d’information : http://drupal.org/project/cck
CTools (Chaos tool suite)
CTools est un outil qui permet d’améliorer le développement grâce à la gestion de formulaire avancée, l’ajout de l’Ajax pour les formulaires, la création de simples contenus utilisables dans les panels et bien d’autres.
Plus d’information : http://drupal.org/project/ctools
Views
Views est LE module indispensable de drupal. Il permet de faire abstraction de beaucoup de code PHP. Le système de vue repose sur une ensemble de critères, de filtres et d’affichages qui vont générer automatiquement une requête SQL et donc des résultats préformatés qu’il est possible de « thèmer » ensuite simplement.
Par exemple, si vous voulez récupérer la liste de tous les magasins de la ville de Paris qui vendent des instruments de musique de couleur rouge, vous pouvez !
Plus d’information : http://drupal.org/project/views
Panels
Ce module génial vous permettra d’ajouter n’impore quel type de contenu (un node, un custom content pane ou même une vue) à un gabarit. Il est possible de créer ses propres gabarits (une colonne, deux colonnes, une ligne + deux colonnes, etc…).
Cela permet donc de gérer des templates complexes et une nouvelle fois de faire abstraction de pas mal de développement.
Plus d’information : http://drupal.org/project/panels
Intégration
Block Class
Ce module simple mais pratique permet d’ajouter une classe CSS à un block pour le styliser facilement.
Plus d’information : http://drupal.org/project/block_class
Menu Attributes
Ce plugin permet d’ajouter différentes informations aux éléments de menus, une nouvelle fois pour facilement les styliser.
Plus d’information : http://drupal.org/project/menu_attributes
Edition et gestion de contenu
Wysiwyg
Module indispensable, il permet de saisir du contenu html. Aucun Wysiwyg n’est livré avec, mais il permet simplement d’activer l’outil de votre choix, que ce soit TinyMCE, CK Editor ou d’autres, préalablement uploadés.
Plus d’information : http://drupal.org/project/wysiwyg
IMCE
Si vous avez choisi TinyMCE, il vous faudra installer IMCE. Il vous permettra d’ajouter des images dans vos contenus, de les uploader à partir de votre ordinateur etc… Il est nécessaire d’installer le plugin IMCE Wysiwyg Bridge pour que tout fonctionne correctement.
Plus d’information : http://drupal.org/project/imce
Multimédia
ImageField
Maintenant disponible de base dans Drupal 7, ce module permet d’ajouter un champ « Upload de fichier« .
Plus d’information : http://drupal.org/project/imagefield
ImageCache
ImageCache permet de définir différents profils de redimensionnement d’image, selon différentes règles (crop, resize, etc…) pour gérer différentes tailles de vignettes (miniatures, larges, etc…).
Plus d’information : http://drupal.org/project/imagecache
Multilingue
i18n
Ce module apporte différentes améliorations au système natif de traduction de Drupal comme les traductions de taxonomie, de variables, de blocks etc…
Plus d’information : http://drupal.org/project/i18n
Référencement
Nodewords
Nodewords apporte une plus grande souplesse dans la gestion des métadonnées. Il permet de saisir des données (meta description, keywords, etc…) aux différents contenus, ainsi que de définir des règles automatiques (à partir du champ titre de l’article par exemple), et de saisir les informations pour différentes pages (accueil, 404, etc…).
Plus d’information : http://drupal.org/project/nodewords
Pathauto
Ultime module de réecriture d’URL, il permet de saisir pour chaque contenu sa propre url ou de définir de manière automatique une URL pour un type de contenu, en reprenant par exemple le titre, la date, la catégorie etc…
Plus d’information : http://drupal.org/project/pathauto
Google Analytics
Utilitaire simple pour paramétrer un compte Google Analytics pour votre site.
Plus d’information : http://drupal.org/project/google_analytics
XML Sitemap
Génération automatique pour les types de contenus, la taxonomie et les menus choisis d’un sitemap.xml à l’intention des robots (Google, Bing …). Mise à jour par CRON.
Plus d’information : http://drupal.org/project/xmlsitemap
Recherche
Custom Search
Permet d’ajout des filtres particuliers selon le type de contenus, la taxonomy etc… pour la page de recherche. Apporte également un block que l’on peut disposer où on veut pour faciliter la recherche.
Plus d’information : http://drupal.org/project/custom_search
Administration
Admin menu
Un outil simple pour drupal 6 (dispo en standard sur la version 7) qui ajoute une barre de raccourcis en front office, vers les différentes pages de l’admin. Gain de temps évident !
Plus d’information : http://drupal.org/project/admin_menu
J’en ai peut être oublié …
Cette liste comprend les modules qui m’ont été indispensables dans le cadre de la mise en place d’un site complexe. Si je suis passé à côté de modules importants, n’hésitez-pas à les mentionner dans les commentaires !