Créer un module avec Drupal 8

Utiliser les subscribers

Testez gratuitement nos 1325 formations

pendant 10 jours !

Tester maintenant Afficher tous les abonnements
Associé à un event, le subscriber va vous permettre d'exécuter une action précise à un moment défini. Par exemple, vous allez pouvoir envoyer un e-mail au moment de l'inscription.
05:12

Transcription

Maintenant que nous avons créé notre événement, nous allons y attacher un « subscriber ». Donc pour commencer, à la racine de votre module, vous créez un nouveau fichier qui va s'appeler « demo.services.yml ». Dans ce fichier vous déclarez le service suivant. Donc déjà on déclare « services », « demo ». Donc là vous choisissez le nom. Ici on va l'appeler « config_subscriber », « class ». Donc là on va déclarer notre classe de « subscriber ». Donc on fait : « Drupal\Demo\EventSubscriber \ConfigSubscriber » Et au même niveau que « class », on va créer des « tags ». Et ici donc, respectez bien la syntaxe, on va créer un tag dont le nom est « event_subscriber ». Voilà, donc on a créé notre service pour ce « subscriber », on va maintenant créer la classe. Donc dans « src », vous créez un nouveau dossier qui va s'appeler « EventSubscriber » et vous créez votre fichier classe. Donc le « namespace » c'est « Drupal\demo\EventSubscriber » et de la même manière que nous avons utilisé le composant de Symfony ou « EventDispatcher », ici on va utiliser « EventSubscriber ». On crée sa classe, donc « ConfigSubscriber » qui implémente l'interface « d'EventSubscriber » et on nous indique ici également qu'il y a une méthode qui manque : c'est « getSubscribedEvents ». Donc on va créer cette méthode. Et voilà, on nous laisse tranquille. Alors, on va renvoyer un tableau contenant une liste d'événements auxquels on souhaite réagir, auxquels on souhaite souscrire. Donc en fait ici, en clé on a notre événement, donc « contact_form.save » qu'on a pu retrouver ici, qu'on a lancé ici. Donc ici on va ajouter un tableau de cette forme-là avec ici comme valeur « onConfigSave ». Et en fait, cette valeur-là, ça va être la méthode qui va être lancée, que vous allez donc devoir implémenter. Donc on implémente la méthode en question. On prend l'événement en paramètre et on va voir l'intérêt dans quelques secondes. Donc depuis l'événement, en fait on peut récupérer la config et la modifier à la volée. Donc on fait un « getConfig ». Donc on a oublié de la mettre dans une variable, donc « config = event », « getConfig » et ce qu'on va faire pour vérifier que ça fonctionne, on va d'abord faire un « dsm » de alors, « config », « get » et de notre valeur, par exemple « store_name ». Voilà. En front, on va vider le cache puisqu'on a ajouté un service. Ici on va sauvegarder notre configuration pour voir si notre message s'affiche. Voilà, donc si on revient sur notre administration, on va juste enregistrer la configuration. Donc on voit le « Store name », donc « Mon magasin » qui se réaffiche grâce au « dsm ». Voilà, donc, ensuite on va enlever ça et ce qu'on peut faire, ça va être : si par exemple dans notre configuration, dans nos horaires d'ouverture on a le terme « liquidation », à ce moment-là on simule un traitement d'envoi d'email. Voilà, donc ici on pourrait faire ce traitement. On envoie un message à l'utilisateur et on pourrait par exemple rajouter « en liquidation » après le nom du magasin. On retourne donc sur notre formulaire. Voilà, on soumet par exemple ici : « liquidation ». Donc il suffit que le texte soit dedans pour que la machine s'enclenche. Ok, donc on a bien notre message : « Un email concernant la liquidation a été envoyé à tous les clients. » Et on a bien après « Mon magasin » le terme « en liquidation » qui s'est rajouté. Donc là on a bien réussi à créer des « events » et à y associer des « subscribers » pour effectuer un traitement spécifique.

Créer un module avec Drupal 8

Étendez les possibilités de Drupal en créant votre propre module. Modifiez le fonctionnement natif du CMS grâce aux hooks, créez une entrée de menu, un bloc système, etc.

1h14 (24 vidéos)
Aucun commentaire n´est disponible actuellement
 
Logiciel :
Spécial abonnés
Date de parution :27 avr. 2016

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !