Vous êtes ici

Installer et activer un module simple, méthode graphique

Vous avez 30 secondes ?
S'abonner au flux d'actualités
Rubrique: 
Pratique
Difficultée: 
Facile

Avant de commencer

L'installation d'un module est un terme ambigu pour désigner deux actions distinctes : le téléchargement et la mise en place du module dans l'architecture Drupal et son activation. La plupart des modules ont une installation simple, c'est à dire sans dépendances et sans librairie externe. Certains au contraire, dépendent d'outils externes à Drupal.
 
Bon... avant de continuer, expliquons tout cela : time for definition !
  • Téléchargement du module : Pour être reconnu par Drupal, votre module doit être placé au bon endroit dans l'architecture des fichiers de votre installation Drupal. Si vous ne vous rappelez pas où, relisez les chapitres Comprendre l'architecture Drupal et Préparer son installation. Si vous vous en rappelez, c'est donc dans modules voir sites/all/modules ou sites/mon_site.fr/modules.
  • Activation du module : Un module peut-être présent dans votre installation mais non activé. Drupal "le voit" et il est présent sur la page des modules, mais Drupal ne l'utilise pas. Activer un module, c'est faire en sorte que Drupal l'utilise.
  • Dépendances : Certains modules auront besoin -pour fonctionner- d'une notion ou fonctionnalité apportée par un autre module. C'est ce que l'on appelle une dépendance. Si un module A dépend de B, vous ne pourrez pas activer A tant que B ne sera pas lui-même activé. Idem, vous ne pourrez pas désactiver B tant que A sera activé, afin de ne pas casser le fonctionnement de A.
  • Librairie externe : Certaines fonctionnalités existent en dehors de Drupal, c'est le cas par exemple de Superfish, un outil permettant de créer des menus déroulants. Pour utiliser cette librairie externe dans Drupal, il vous faudra un module permettant de faire le lien entre Drupal et la librairie, dans notre cas le module Drupal Superfish. Ce module aura donc une dépendance vers une librairie externe. Son installation se fera en deux temps: d'une part la mise en place du module lui-même puis le téléchargement et la mise en place de la librairie, à l'endroit voulu par le module Drupal (il faudra lire la documentation pour le savoir !).

La page des modules

Commençons cette installation en nous rendant sur la page de gestion des modules de notre site. Elle se trouve sur votre site à l'adresse : admin/modules. Plusieurs solutions pour vous y rendre :
  • taper l'adresse /index.php?q=admin/modules dans le cas où vous n'utilisez pas les URL propres (cf Installation de Drupal)
  • taper l'adresse /admin/modules dans le cas où vous utilisez les URL propres.
  • cliquer sur le lien Etendre de la barre d'outil (cf Petit tour du propriétaire).
Dans tous les cas, nous nous retrouvons sur la page de gestion des modules.
 
Page de gestion des modules (admin/modules).
 
Sur l'image précédente :
[1] Ban est un module installé mais non activé. Il n'a aucune dépendance.
[2] Color est un module sans dépendance installé et activé: il est donc possible de s'en servir.
[3] Block est un module activé dont dépend le module Custom Block. Il ne sera donc pas possible de le désactiver/désinstaller tant que Custom Block ne sera pas lui-même désactivé.
[4] Comment est un module dépendant de plusieurs autres modules : Datetime, Field, Text, Filter et User. Les modules Forum et Tracker dépendent de Comment. Il ne sera donc pas possible d'activer Forum si à la fois Datetime, Field, Text, Filter, User et enfin Comment ne sont pas activés !!

Déploiement / mise en place

Commençons avec une installation simple. Dans ce cas -et c'est le cas pour la plupart des modules-, vous pourrez effectuer une installation graphique via l'interface de Drupal. C'est alors votre site qui se chargera de télécharger le module et de le placer dans le dossier modules à la racine de votre installation. Ceci sera effectué directement par le serveur. Pour nous, en local, c'est notre ordinateur, donc ça change rien. Mais dans le cas d'un site en ligne, c'est la connexion du serveur (l'ordinateur hébergeant votre site) qui bosse ! L'opération est donc plus rapide que lorsque vous le ferez à la main: la connexion du serveur étant nécessairement meilleure que la votre !

Récupérer le module

Nous avons vu comment choisir quel module utiliser pour un besoin en particulier : il vous faut maintenant vous rendre sur la page Drupal de ce module. Pour ce tutoriel, nous allons installer le module CAPTCHA dont nous avions parlé dans le tuto précédent. C'est un module qui va ajouter un test de type CAPTCHA dans les différents formulaires utilisateurs de votre site (inscription, commentaires, etc..) dans le but d'éviter le spam. Saurez-vous retrouver la page Drupal de ce module vous-même ? Si vous ne trouvez pas vous avez certainement oublié de lire la partie Où trouver un module ? !
 
Vous avez tapé "drupal module captcha" dans Google et choisi le lien indiquant "CAPTCHA | Drupal.org" ? C'est parfait, vous avez tout compris !
Vous êtes donc normalement arrivé sur la page du module CAPTCHA à cette adresse : http://drupal.org/project/captcha.
 
Vous savez également quelle version choisir puisqu'encore une fois, vous avez parfaitement lu le tuto Où trouver un module ?! C'est la version 8.x-1.x-dev dans l'image ci-dessous.
 
Vous constaterez que le module est disponible sous deux formats d'archive différents: tar.gz et zip. Pour la méthode graphique, cela n'a pas d'importance. Voici quoi faire :
  • clic droit sur l'un des deux formats disponible
  • clic sur Copier l'adresse du lien dans le menu contextuel
Copier l'adresse du lien de la version choisie.

Déployer le module dans l'installation Drupal

Nous avons désormais l'adresse d'un lien de téléchargement de notre module. Il nous faut alors le déployer, c'est à dire faire en sorte que notre module se retrouve dans le bon dossier pour être pris en compte par notre installation Drupal. Pour cela :
  • se rendre sur la page des modules de votre site : admin/modules
  • cliquer sur "Installer un nouveau module"
Installer un nouveau module.
  • coller simplement l'adresse du lien du module dans la case prévue à cette effet.
Transférer un module via l'interface pour l'installer.
 
Vous pouvez également transférer directement l'archive que vous aurez précédemment téléchargée via le second champ de cette page d'installation des modules. Toutefois, ceci n'est pas intéressant dans les cas courants : vous allez prendre du temps à télécharger l'archive pour ensuite prendre du temps à l'uploader sur le site, tout cela selon la vitesse de votre bande passante. Rappelez-vous, en passant par l'adresse du lien, c'est le serveur (et donc sa connexion) qui gère tout !
  • cliquer sur Installer
  • patienter pendant que votre serveur récupère l'archive, la décompresse et la place dans le bon dossier de votre installation Drupal...
Il se peut que l'installation en local via cette méthode ne fonctionne pas et conduise à une erreur HTTP -10060. Cela arrive généralement si vous êtes connecté via un proxy. Ne vous inquiétez pas, vous pouvez utiliser votre site sans problème et installer des modules, soit via la même méthode en entrant l'archive dans le formulaire, soit par la méthode "à la main" que nous verrons dans le prochain tutoriel.
 
Patientez pendant l'installation du module.
 
Votre module est maintenant déployé dans votre installation Drupal et devient disponible à l'installation.
 
  • cliquer sur le second lien : "Activer les modules nouvellement installés".
Vous vous rappelez l'erreur de traduction que nous avions rencontré durant l'installation en local de Drupal ? La revoilà possiblement si vous travaillez derrière un proxy (depuis votre entreprise par exemple). Nous y remédierons dans le chapitre suivant !

Activer et paramétrer le module

Activer le module

L'action précédente à déjà placé le module dans le dossier modules de notre installation Drupal. Désormais, le module est reconnu par Drupal et se trouve donc présent sur la page des modules. En y retournant (à l'adresse admin/modules), vous devriez le voir. Il se trouve actuellement tout en bas.
  • activer le module : cocher sa case d'activation et cliquer sur le bouton "Enregistrer la configuration" en bas de page.
Activer le module
 
C'est cette étape qui marque véritablement l'installation du module, au sens où c'est seulement maintenant que votre module devient utilisable. Durant cette phase d'activation, votre module va éventuellement créer une nouvelle table dans la base de donnée (si nécessaire), ajouter des liens dans votre site (un lien vers une page pour configurer le module notamment), ajouter des noeuds ou des fonctionnlités à votre site (si nécessaire).
 
C'est parce que votre module va modifier le comportement de Drupal ainsi qu'éventuellement sa base de donnée que l'étape de désintallation est nécessaire pour supprimer toute trace du module. Après désintallation, tout ce qui aura été fait avec ce module sera supprimé et perdu. Nous verrons comment désinstaller des modules dans un prochain tutoriel.

Configurer le module

La plupart des modules disposent d'options de configuration. Celles-ci sont regroupées sur la page de configuration du module. L'URL de cette page est donnée dans la documentation spécifique du module. Mais la plupart du temps, un raccourci vers cette page est disponible sous la description du module concerné, directement sur la page de gestion des modules
  • cliquer sur la description du module concerné
  • cliquer sur "configurer" dans la description du module.
Configurer le module
 
Notez que les traductions sont désormais automatiquement importées par Drupal 8 lors de l'activation d'un module, si celles-ci sont disponibles.

Droits sur le module

La plupart des modules viennent également avec des droits d'accès. Sur le module captcha que nous venons d'installer, nous pouvons par exemple définir que :
  • Seuls les anonymes devront résoudre le captcha lorsqu'ils commenteront les articles.
  • Seuls les administrateurs pourront configurer les options de ce module.
  • ...

Avantages et inconvénients de la méthode

Avantages :
  • Facilité ;
  • Pas besoin de manipuler soit-même les fichiers ;
  • Pas besoin de client FTP ;
  • C'est la connexion serveur et non celle du client qui détermine la vitesse de téléchargement et d'installation.
 
Inconvénients :
  • Ne suffit pas pour les modules avec dépendance vers des librairies externes ;
  • Ne permet pas de gérer l'installation des modules en multi-sites : tout se place dans modules
Notation: 
Average: 4.3 (4 votes)
Vous avez aimé: 

Commentaires

Excellent tutoriel, mais à cette étape, j'ai un souci : que ce soit en ajoutant le lien pour "Installer depuis une URL" ou en "Transférant l'archive de module" téléchargée auparavant, en .zip comme en tar.gz, Drupal tourne un moment et puis il me ré-affiche la même page d'installation d'un module sans que rien n'ait apparemment été modifié (pas de nouveaux fichiers dans mes dossiers modules/ ou sites/all site/mon-site, pas de message d'erreur, pas de log dans les rapports).
Qu'est-ce qui peut bien se passer ? Problème de droits en écriture?
Merci d'avance pour votre aide !
This post is useful!
This post is useless!

Finalement, après une installation manuelle, les deux modules apparaissent, mais le module CAPTCHA déclenche des erreurs php violentes qui "tuent" le Drupal. Il a fallu que je supprime à la main son dossier dans le répertoir sites/all/modules pour pouvoir réaccéder à l'interface Drupal plutôt qu'à des pages d'erreurs php causées par le module...
Instabilité lié au statu d'alpha de D8 et donc des modules adaptés ?
This post is useful!
This post is useless!

Bonjour,
Concernant votre premier message, j'ai généralement ce soucis lorsque je cherche à installer un module derrière un pare-feu ou un proxy.
Le second soucis, effectivement provient du module en lui-même. Drupal 8 bouge beaucoup et il est difficile pour les créateurs de module de suivre au fur et à mesure. D'ailleurs il est conseillé par Drupal d'attendre la version bêta pour commencer à programmer les modules dans un environnement plus stable.
Je changerais au besoin le module d'exemple de l'article lors de la sortie de Drupal s'il n'est pas encore au point à ce moment.
This post is useful!
This post is useless!
Portrait de gribouilles

bonjour,
impossible d'installer le module j'ai essayé avec l'url et le fichier téléchargé
dans le répertoire module : rien (j'ai fait une installation multisite)
 
plus largement je suis 100% autodidacte pensez vous que je fais le bon choix de démarrer avec la version 8 ? (choix des thèmes, des modules...)
 
 
This post is useful!
This post is useless!

Bonjour,
Quelle erreur avez-vous à l'installation ? 
Le fait que le module ne fonctionne pas ne vient pas nécessairement de vous. Rappelez-vous que Drupal 8 est en version beta, n'est pas encore officielle et n'est donc pas terminée. Les modules contributeurs le sont donc encore moins !
Dom.
This post is useful!
This post is useless!
Portrait de gribouilles

et bien en installation automatique je n'ai aucun message d'erreur il ne se passe rien tout "simplement"
ensuite j'ai tenté l'installation manuelle du module global redirect et  là : FATAL ERREUR
Fatal error: Cannot access protected property Drupal\Core\Language\Language::$id in C:\wamp\www\Drupal\modules\globalredirect\src\EventSubscriber\GlobalredirectSubscriber.php on line 173
 
 
This post is useful!
This post is useless!

Bonjour,
Il semble que le(s) créateur(s) du module cherche à accéder à un attribut protected via
\Drupal::languageManager()->getDefaultLanguage()->id
au lieu de via son accesseur : 
\Drupal::languageManager()->getDefaultLanguage()->getId()
En bref, ce n'est pas de votre faute, mais certainement d'un attribut récement passé de public à protected, de sorte que le module n'est plus à jour actuellement.
Rappelez-vous que Drupal 8 n'est pas encore officiel, qu'il évolue très vite et que donc les modules contributeurs ne sont pas encore terminés.
 
This post is useful!
This post is useless!

Bonjour, 
 
Etant néophyte dans drupal 8, je suis également dans le même cas que les utilisateurs précédents. 
 
Je n'arrive pas à installer mon module Captcha en D8 aussi bien en copiant l'url ou en transférant l'archive module. J'ai essayé via Drupal 7 et là tout fonctionnent à merveille et très rapidement avec les deux méthodes: transfert et copy url link. 
 
Pensez-vous que cela est dû à la version Drupal 8? 
 
Ou bien ai-je manqué une étape dans mon processus de développement? Cela me paraitrait bizarre étant donné que ma version 7 installée exactement de la même façon accepte mon nouveau module et l'installe sans peine. 
 
Un grand merci à vous. 
 
 
This post is useful!
This post is useless!

Bonjour,
La version 8.x-1.x-dev du module Captcha fonctionne bien avec la version 8.0.x (HEAD) de Drupal 8, je viens de tester à l'instant. En revancye, je ne suis pas certain qu'elle fonctionne encore avec Drupal 8.0.0-beta10.
Comme Drupal 8 est en cours de développement et change tous les jours, il n'est pas évident que les modules soient à jour des dernières modifications, ou au contraire, comme ici, sont parfois trop à jour par rapport à la dernière beta. 
Cordialement
Dom.
This post is useful!
This post is useless!
Portrait de Valentin Rabollet

Le problème semble exister également en beta 12. Je vais essayer avec un nouveau module pour voir comment aller au bout du chemin. J'ai essayé par ailleurs d'installer le thème ZIRCON qui est compatible Drupal 8 mais qui part en erreur apèrs avoir cependant configuré les valeurs max de post, d'upload et de time-out car ce dernière pèse 29Mo. Il lui manque visiblement un fichier yml qui existe pourtant bien dans le ZIP. Je suis également newbee sur Drupal 8 et je vous remercie pour votre blog qui m'est fort utile. Mes 1ères impressions sont plutôt bonnes sur le back office et le front en revanche cela se complique beaucoup lorsqu'on veut faire des choses somme tout banales : appliquer un beau slideshow ou un carrousel, afficher les contenus les plus commentées, afficher la fiche profil du rédacteur du contenu.
This post is useful!
This post is useless!

C'est un soucis avec le module Captcha et non avec Drupal 8 lui-même. Si captcha n'a pas été mis à jour entre temps, aucune chance qu'il soit compatible beta12 s'il ne l'était beta10.
Je vais changer ce tutoriel pour utiliser l'un de mes modules qui eux sont à jour ;)
 
Pour ce qui est des choses "banales", imaginez que vous deviez les coder entièrement vous-mêmes: ce n'est pas si banal, surtout le slideshow !
- pour le slideshow, j'ai entendu parler de
et https://www.drupal.org/project/nivo_slider, mais je ne les ai pas essayé pour vous en garantir le résultat.
- pour afficher les contenus les plus commentés: une simple vue (Structure -> Vue). Je ferais bien-sûr un tutoriel là-dessus !
- pour afficher la fiche profil du rédacteur du contenu, il y a automatiquement un lien vers le profil de l'auteur dans les "informations sur l'auteur" en gris clair sous le titre d'un noeud. Sinon, vous pouvez faire une vue de type block montrant le profil utilisateur de l'auteur du noeud. Cela me donne une bonne idée de scénario pour un tutoriel tiens :)
This post is useful!
This post is useless!
Portrait de DambyGreen

Salut a tous, En suivant les indications de Dominique CLAUSE dans le tuto <a href="http://drupal-addict.com/installer-et-activer-un-module-simple-methode-g... rel="nofollow">http://drupal-addict.com/installer-et-activer-un-module-simple-methode-g..., je ne parviens pas a installer un module. Cela en indiquant URL de l'archive et aussi, comme alternative son path(Chemin dans le systeme de fichiers). Apres avoir renseignee URL ou PATH et cliquer sur INSTALL, redirection vers ce formulaire <a href="http://localhost/TutoDrupalAddict/core/authorize.php" rel="nofollow">http://localhost/TutoDrupalAddict/core/authorize.php</a> qui me demande de fournir les infos de connexion a mon serveur dont CONNECTION METHOD(ici seulement FTP), USERNAME, PASSWORD, ADVANCED SETTINGS(host &amp; port). Et enfin, le bouton CONTINUE que je clique, pour voir safficher cela Warning: ftp_login(): Login incorrect. in Drupal\Core\FileTransfer\FTPExtension-&gt;connect() (line 24 of core/lib/Drupal/Core/FileTransfer/FTPExtension.php). Failed to connect to the server. The server reports the following message: Cannot log in to FTP server. Check username and password For more help installing or updating code on your server, see the handbook. Suis bloque a ce niveau, etant novice et sachant quoi faire, je demande laide de tous. Merci tout le monde!!!!
This post is useful!
This post is useless!

Bonjour,
Je pense que c'est une question de droit FTP / SSH. Avez-vous entré les credentials (login/mot de passe) d'un utilisateur autorisé en FTP sur votre serveur ? C'est cela que demande le script.
 
Si vous n'en avez pas, il vous faudra configurer un utililisateur FTP ou SSH sur votre serveur au préalable, puis vérifier que votre dossier "modules" n'est pas en lecture seul et que le serveur à le droit d'écrire dans ces fichiers. Sous linux, quelque chose comme:

sudo chown www-data:www-data -R /var/www/drupal

ou

sudo chown apache:apache -R /var/www/drupal

En ajustant bien entendu l'utilisateur et le chemin vers Drupal.
 
This post is useful!
This post is useless!
Portrait de Sindy

Je suis ce cours depuis le début et j’ai téléchargé Drupal 8, créé une BD, préparé WAMP et configuré mon site, mais bizarrement quand je clique sur n’importe quel outil de la barre d’outil dans mon site il s’affiche « Page non trouvée ». Quand je clique sur Accueil je me trouve dans la page de configuration de WampServer avec mes Projets HelloWord, TutoDrupalAddict, …. En plus je n’ai pas bien compris ou’ trouver la page de gestion des modules de mon site ? Vous avez écrit qu’on peut la trouver sous l’adresse /admin/modules, mais quand j’ai tapé ça dans la barre d’adresse, je suis redirigé vers Google Est-ce que vous pouvez m’aider pour résoudre ces problèmes svp ?
This post is useful!
This post is useless!

Bonjour,
Les adresses que je donne sont toujours relatives, car le début dépend de votre site. 
/admin/modules signifie donc : http://<votre-site>/admin/admin.
Par exemple:
ou 
ou
etc...
 
Quand à votre autre problème, est-ce que vous avez effectué toute l'installation sans problème ? Si non, alors recommencez cette installation en résolvant ces problèmes !
Si oui, regardez voir dans le fichier .htaccess à la racine de votre installation.
Vous devriez trouver dedans ces lignes:
# If your site is running in a VirtualDocumentRoot at http://example.com/,
# uncomment the following line:
# RewriteBase /
Essayez de faire ce que ça dit, c'est à dire décommenter cette dernière ligne (ie enlever le #) :
RewriteBase /
 
Une dernière chose, essayez aussi d'utiliser Acquia DevDesktop plutôt que WAMP: 
This post is useful!
This post is useless!
Portrait de Hana

Bonjour, Au début j'ai pensé de créer un seul site, c'est pour cela que je n'ai pas préparé l'architecture pour un multi-site et j'ai déjà installé et configuré mon site Drupal 8. Comment je fais maintenant pour pouvoir construire plusieurs sites? dois-je tout refaire? merci d'avance
This post is useful!
This post is useless!

Bonjour,
 
Je n'ai pas encore essayé cette situation sous D8. J'imagine que vous avez vos files et votre settings.php dans le dossier "default" (sites/default/files). Dans ce cas, imaginons que votre nom de domaine soit "mondomaine.com" alors:
- changez le "$config_directories['sync']" de sites/default/files vers sites/mondomaine.com/files dans settings.php
- renommez le dossier default (dans sites) en mondomaine.com
- réajouter un dossier default à partir de l'archive d'un D8 fraichement téléchargé.
- faites un clean/cache
- lancez /update.php
- lancez un cron
 
Je n'ai pas essayé sous D8, alors je vous garantie pas que ça va marcher. Faites le sur un site de test avant !
 
Dom.
This post is useful!
This post is useless!