Blog

Vous pouvez consulter tous nos billets en anglais au sujet de Drupal en suivant ce lien.

Un exemple de cache en action avec Drupal 8

Comme on dit en matière de programmation informatique, seules deux choses sont extrêmement complexes : le nommage des variables et l'invalidation du cache. Drupal 8 dispose d'un système de cache automatique activée par défaut proprement révolutionnaire qui permet de proposer un cache pour les visiteurs anonymes et aussi surtout pour des utilisateurs authentifiés et ceci sans aucune configuration. Mais le propos de ce billet n'est pas de rentrer dans le détail de ce système de cache, mais plutôt d'illustrer l'utilisation de la cache API permettant de mettre en place son propre cache pour un cas d'usage bien précis.

Ajouter des résultats à une recherche effectuée avec Search API et ElasticSearch sur Drupal 8

Lors de recherches effectuées sur les contenus d'un site Drupal 8, il peut parfois être utile de pouvoir rajouter certains contenus aux résultats déjà obtenus, et ceci en fonction de ces résultats. Cela peut être du contenu qu'on souhaite mettre en avant quelque soit la recherche, ou faire remonter des landing page génériques qui servent et complètent les contenus trouvés ou encore les auteurs des contenus issus des résultats de la recherche.

Faire une requête SQL sur plusieurs tables avec Drupal 8

Drupal 8 fournit une API, avec EntityQuery, qui simplifie de manière significative l'écriture de requêtes SQL pour récupérer et lister un ensemble de contenus. Ainsi il est très facile de récupérer une liste de contenus selon des critères et des conditions complexes, sans avoir besoin de connaître précisément les tables et leur syntaxe pour chaque champ associé à une entité. Mais nous pouvons avoir besoin de recourir à des requêtes plus complexes nécessitant d'associer des données issues de plusieurs tables.

Basculer de Google Maps vers Leaflet et OpenStreetMap avec Geolocation sur Drupal 8

Le 2 mai 2018 Google a annoncé un changement de politique majeure concernant l'utilisation de ses services en ligne, et dont notamment son célèbre service de cartographie GoogleMaps et toutes ses API associées, pour embarquer ou générer des informations géolocalisées. Ce changement de politique rend désormais payant un service auparavant disponible gratuitement dans certaines limites de quota. Il est donc temps de cesser d'utiliser ces solutions, par habitude ou par facilité, et d'aller voir ce qui se fait très bien aussi ailleurs. Regardons comment sur Drupal 8 nous pouvons basculer sur une solution open source basée sur Leaflet et OpenStreetMap.

Alerte de sécurité critique - Drupal core PSA-2018-003

L'équipe de sécurité de Drupal vient de publier ce jour, lundi 23 avril 2018, un bulletin d'alerte (Drupal 7 and 8 core critical release on April 25th, 2018 PSA-2018-003) annonçant la publication prochaine d'une mise à jour de sécurité critique. Cette mise à jour de sécurité sera publiée et diffusée le mercredi 25 avril entre 16h00 et 18h00 UTC (soit entre 18h et 20h heure française). Soit après-demain. Les 2 versions en cours de Drupal (Drupal 7 et Drupal 8) sont concernées par cette annonce.

Mettre en place un contrôle de stock simple avec Drupal Commerce 2

Si nous ne disposons pas (encore) d'une solution contribuée (commerce_stock devrait être prochainement être disponible), Drupal Commerce 2 dispose d'ores et déjà d'une API pour mettre en place un contrôle des stocks, avec le service Availability Manager. Découvrons comment mettre en place un contrôle de stock très simple, basé sur un champ (par exemple field_stock) qui aura été ajouté sur un produit.

Alerte de sécurité critique - Drupal core PSA-2018-001

L'équipe de sécurité de Drupal a publié mercredi 21 mars 2018 un bulletin d'alerte annonçant la publication prochaine d'une mise à jour de sécurité hautement critique. Cette mise à jour de sécurité critique sera publiée et diffusée le mercredi 28 mars à partir de 18h00. Les 2 versions en cours de Drupal (Drupal 7 et Drupal 8) sont concernées par cette annonce. Tenez vous prêt à mettre à jour votre ou vos projets Drupal, 7 ou 8.

Utiliser les tunnels d'achat de Drupal Commerce 2

Drupal Commerce 2 permet de définir out of the box de multiples tunnels d'achats, permettant de personnaliser selon la commande, le produit acheté, le profil client ce processus d'achat et de le modifier en conséquence. C'est une fonctionnalité extrêmement intéressante, en cela qu'elle peut permettre de simplifier autant que de besoin ce fameux tunnel d'achat. Découvrons le fonctionnement général de ces tunnels d'achats, et comment pouvoir les utiliser à discrétion de façon granulaire.

Envoyer les courriels transactionnels liés au compte utilisateur au format HTML avec Drupal 8

Nous disposons de plusieurs solutions pour envoyer automatiquement les mails émis par un projet Drupal 8 au format HTML. Sans pouvoir tous les citer, nous pouvons utiliser SwiftMailer, MimeMail,  ou encore Mailjet API, MailGun, etc. En quelques clics, nous pouvons alors émettre les différents mails, qu'ils soient transactionnels ou métier au format HTML. Il reste un cas un peu particulier : celui de tous les emails émis en fonction des différents événements liés à la vie d'un compte utilisateur. Découvrons ici pourquoi ces emails sont différents et comment remédier à leur envoi dans un format HTML.