Drupal : comment créer un module ? Drupal : une architecture multi-niveaux

Drupal est un système de gestion de contenu (CMS en anglais) libre et Open Source publié sous la licence publique générale GNU et écrit en PHP.

Il existe depuis 2001. Drupal possède un noyau assez léger personnalisable avec des modules. Ce qui lui permet une grande flexibilité, mais il faut aussi faire le tri parmi plus de 5500 modules.

denis sanchez est ingénieur développement netapsys conseil.
Denis Sanchez est ingénieur développement Netapsys Conseil. © Netapsys

Certains le considèrent aussi comme un framework grâce à son API. Ce qui est aussi assez déroutant par rapport à d'autres CMS, c'est son back-office (partie administrative) qui est lié à son front office : les administrateurs éditent le contenu dans la même charte graphique que les visiteurs. Cependant à l'usage, cela rend le travail plus productif.
 

Composition de Drupal



Drupal se compose en 5 couches :

 1ère couche : le cœur du système appelé aussi DATA(NODES), c'est ici que se trouve le conteneur des nodes (nœuds) et des données. Avant d'afficher quoique ce soit, il faut le saisir en tant que données.

 2ème couche : les MODULES, ce sont des plugins - qui peuvent soit faire partie du cœur de Drupal ou être créés. Ils permettent d'ajouter de nouvelles fonctionnalités au site.

 3ème couche : les BLOCS et les MENUS, ils peuvent être affichés à différents endroits de votre thème, et peuvent avoir des paramétrages indépendants qui influenceront leur affichage dans certaines pages en fonction du type d'utilisateurs.

 4ème couche : les permissions (USER PERMISSIONS) : c'est ici que l'on paramètre ce à quoi les utilisateurs ont accès, l'attribution de rôles.

 5ème couche : le gabarit du site (TEMPLATE) est majoritairement constitué de XHTML et de CSS. On y insère le contenu du système aux endroits appropriés. On utilise généralement $content (pour les utilisateurs basiques de Drupal) et $node (pour les développeurs, car le $node contient les données brutes).