Vous êtes ici

Où placer les modules et thèmes sous Drupal 8 ?

Portrait de DrupalFacile
Soumis par DrupalFacile le jeu, 12/11/2015 - 10:02

Avec Drupal 8, installer un module est toujours très facile bien que légèrement différent. Auparavant, vous deviez placer vos modules sous /sites/all/modules pour les rendre disponibles à tous vos sites, ou /sites/monsite/modules pour ne les proposer qu'à un site particulier. Même chose pour les thèmes, avec /sites/all/themes et /sites/monsite/themes. Voyons donc ce qui a changé en regardant les fichiers installés à la racine d'un site Drupal 8 :

autoload.php
composer.json
composer.lock
core/
.csslintrc
.editorconfig
.eslintignore
.eslintrc
example.gitignore
.gitattributes
.htaccess
index.php
modules/
profiles/
README.txt
robots.txt
sites/
themes/
update.php
vendor/
web.config

On a toujours notre dossier /sites, ce qui nous indique que l'on peut toujours restreindre l'utilisation d'un module ou d'un thème au site de son choix. De ce côté, rien n'a changé. Par contre, comment faire lorsque l'on veut rendre disponible un module ou un thème à tous nos sites dans une installation multisites ? Plutôt que de passer par /sites/all/modules et /sites/all/themes, placez les modules et thèmes respectivement sous /modules et /themes - C'est la nouvelle façon de procéder depuis que les modules et thèmes par défaut du coeur de Drupal se trouvent sous /core/modules et /core/themes pour éviter que l'on soit tenter d'y toucher ou d'y ajouter nos propres modules et thèmes.

Rappelez-vous enfin que la bonne pratique est de différencier les modules contrib des modules custom ou patchés. La convention habituellement adoptée est donc :

  • /modules/contrib pour les modules de la communauté Drupal
  • /modules/custom pour les modules crées de toute piéce pour vos besoins spécifiques
  • /modules/patched pour les modules sur lesquels vous avez appliqué un patch, par exemple pour régler un problème avec le module

Cela facilite ainsi grandement le reprise en main de votre site ou même la collaboration avec plusieurs développeurs, en ce sens que l'on sait à quoi s'attendre quand on travaille avec un module contrib tel quel ou un module patché ou custom.

Version: 
Drupal 8
Niveau: 
Débutant
Partager ce contenu