Blog

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

Gérer des librairies externes dynamiquement avec Drupal 8

Drupal 8 a revu en profondeur la gestion des librairies et nous permet de gérer très finement les ressources à charger sur les différentes pages d'un site (cf. La gestion des libraries avec Drupal 8). Néanmoins, si nous souhaitons pouvoir gérer une librairie tierce dont nous ne connaissons pas à posteriori l'emplacement, il nous est difficile de pouvoir la déclarer statiquement. Pour gérer ces différents cas de figure, il va falloir gérer dynamiquement cette librairie. Découvrons comment simplement y parvenir avec le module Libraries API.

Une feuille de route pour Drupal 8. Et après ?

Depuis la sortie de la première version stable de Drupal 8, Drupal utilise désormais un système de gestion sémantique des versions. La mise en place d'un tel système de gestion des versions s'est accompagnée d'une définition d'une nouvelle politique de mise à jour, nous permettant de disposer d'une vision à long terme des différentes versions à venir du coeur de Drupal. Découvrons en détail le fonctionnement de ce système, et la feuille de route sous-jacente de Drupal pour les années à venir.

Drupal  8 : l'envoi de mails sous toutes les coutures

Par défaut, tous les mails envoyés par Drupal 8 le sont en texte brut. Pour envoyer des mails en HTML, que ce soit pour des newsletters, ou encore tout simplement pour les différentes notifications afin de les enrichir quelque peu, il est nécessaire de modifier le système d'envoi par défaut des courriers électroniques, ou encore d'en utiliser un autre. Faisons un tour d'horizon du système d'envoi des courriers électroniques de Drupal 8. Cela est utile à plus d'un titre. Bien sûr si nous avons besoin de réaliser un envoi programmatique, mais aussi pour mieux comprendre le mécanisme général et donc le fonctionnement des différents modules disponibles pour réaliser cette tache.

Maîtriser les entêtes de Drupal 8 et son SEO

Après avoir mis en ligne votre site Drupal 8, vous pourriez constater dans les journaux d'accès à votre site de nombreuses tentatives d'accès aux formulaires d'édition, d'ajout ou encore de suppression de vos contenus, qui échouent bien entendu sur un accès refusé. De belles erreurs 403. Que diable ? Etes-vous la cible d'une attaque ciblée ? Ou bien tout simplement, les moteurs de recherche cherchent-ils à accéder à ces pages généralement interdites aux visiteurs anonymes ? Découvrons le pourquoi du comment, et quelques solutions pour y remédier.

Drupal 8 à votre service !

A l'instar des Plugins, Drupal 8 a introduit un nouveau concept, repris de Symfony2, dans son API : les Services. Ces derniers permettent de mettre à disposition des fonctionnalités assurant une et seule tache, comme par exemple envoyer un courrier électronique ou encore construire le fil d'ariane. La différence majeure des Services comparés aux Plugins est que les services ne disposent pas généralement (ou tout du moins directement) d'une interface graphique de configuration. Pour reprendre la définition concise : un service est un objet PHP, conçu dans le but d'atteindre un objectif spécifique, qui effectue une sorte de tâche globale. Découvrons ce nouveau système des services.

Réaliser des tris sur des vues indexées de Drupal Search API

J'ai été confronté récemment à un bug pour le moins atypique. J'obtenais des contenus dupliqués et/ou manquants sur différentes paginations d'une même vue basée sur Search API. Un bug présent sur le site de production, sur le site de preprod mais différement, et quasi-absent de l'instance de développement. Et le tout apparaissant de façon aléatoire. Après avoir chercher sans relâche sur les termes "drupal search api duplicate sorting" ou "drupal search api duplicate pagination" ou toutes les déclinaisons possibles, je souhaite partager le résultat d'un debug bien corsé.

Les nouveautés de Drupal 8 : son système de configuration

Le système de configuration de Drupal 8 constitue une nouveauté et amélioration majeure de Drupal 8, portée par l'initiative CMI. Le principe en est simple : séparer la configuration d'un site Drupal 8 de son contenu. Cette distinction entre configuration et contenu permet une transition entre plusieurs environnements d'un même site. Toutes les configurations sont stockées désormais au moyen de simple fichiers texte (au format YAML), ce qui sécurise toute modification et évolution si on dispose d'un système de versionning du système de fichiers. Ainsi, des changements et évolutions d'un site Drupal 8 peuvent être envisagées beaucoup plus sereinement. Découvrons les concepts clés de cette nouveauté majeure de Drupal 8.

Prendre le contôle sur les prix affichés avec Drupal commerce

Drupal commerce dispose d'un nombre important de modules contribués permettant de modifier l'affichage du prix d'un produit sur une boutique en ligne. Mais si des besoins métier sont par trop spécifiques, comme par exemple, afficher le prix de vente, et le prix original si une promotion lui est appliqué dessus, ainsi que le prix de vente avec un autre taux de TVA, et n'oublions pas le prix HT, tout ceci accompagné d'une unité de quantité et d'un commentaire,avouez que nous risquons d'être un peu court avec les modules existants tant les besoins métier sont ici particuliers. Découvrons comment prendre le contrôle total de l'affichage du prix de votre produit en créant notre propre formateur de champ qui sera en charge du rendu de celui-ci.

Faut-il un expert Drupal 8 pour se lancer ?

La première version stable de Drupal 8 est enfin disponible au téléchargement. Beaucoup d'encre a coulé sur les nouveautés introduites par Drupal 8, tant elles sont nombreuses il est vrai, mais aussi parce que cette nouvelle version majeure aura su se faire attendre. Nous avons aussi beaucoup lu sur la complexité de Drupal 8, sur la rupture technologique introduite ou son orientation induite de Drupal 8 vers les entreprises et organisations. Qu'en est-il exactement et peut-on lancer son site sur Drupal 8 sans avoir recours à un spécialiste Drupal 8 ou disposer d'une armada de développeurs ?