Création d’un module Magento de formulaire d’abonnement Mailjet

Cet article explique comment créer un module Magento de formulaire d’abonnement à une newsletter pour Mailjet.

Le module Feub Mailjetform dans l'interface d'admin de Magento
Le module Feub Mailjetform dans l’interface d’admin de Magento

Cette semaine j’ai du effectuer une migration (c’est un bien grand mot) de Mailchimp vers Mailjet, le leader européen en matière de service pour l’emailing marketing, principalement pour des raisons de coût, car il faut l’avouer, il n’y a pas photo avec Mailchimp qui est vite cher pour des petits/moyens volumes.

Bref, après la configuration du back office, une des choses les plus naturelles à faire est d’intégrer un formulaire d’abonnement, et bien qu’elle ne fut pas ma surprise de ne rien trouver du côté de Mailjet. Il existe bien un petit générateur de widget très minimaliste qui crée un bout de code iframe à insérer dans son code, un peu léger car pas moyen de personnaliser l’apparence du formulaire. L’autre solution, c’est de taper dans l’API et d’écrire son propre code.

J’ai donc cherché pas mal en ligne pour trouver un module pour Magento, en vain. Je me suis rabattu sur du PHP lambda à intégrer, un bout de code pour ajouter un banal formulaire de souscription à une newsletter Mailjet. Rien, même après plusieurs heures.

J’ai donc décidé que j’allais écrire mon propre module Magento en utilisant l’API de Mailjet.

Continue reading « Création d’un module Magento de formulaire d’abonnement Mailjet »

Laravel 4 et Ajax

Dans cet article, voyons comment implémenter une requête Ajax (XHR) avec le framework Laravel.

Implémenter une requête Ajax au sein d’un projet Laravel n’est pas bien compliqué. Dans ce bref exemple, j’ai un tableau de données (non présent dans le billet), un des champs est une icône de statut de l’enregistrement qui peut-être actif ou non, et lorsque l’on clique sur ce bouton, l’état bascule en faisant une requête XHR.

La partie javascript va se trouver dans la vue en question (celle qui affiche le tableau). Lorsque le bouton est cliqué, jQuery.ajax() va déclencher l’exécution de l’action getToggleVisibility() du controlleur courrant, DasboardController dans notre exemple, celui-ci va retourner une réponse JSON qui est utilisée pour intéragir sur la vue. Et le tour est joué.

Continue reading « Laravel 4 et Ajax »