2023-10-17

Les avantages de la migration de Drupal 7 vers Drupal 10 : fonctionnalités et performances améliorées

Nikolay Tsekov

Chef de l'exploitation

Les avantages de la migration de Drupal 7 vers Drupal 10 : fonctionnalités et performances améliorées

Amélioration des performances

Drupal 10 utilise le framework Symfony 5, qui offre des améliorations significatives en termes de performances par rapport à l'architecture de Drupal 7. Symfony a été conçu dès le départ comme un framework PHP de haute performance, dont les principaux objectifs sont la rapidité et l'efficacité.

Le code sous-jacent et les modèles architecturaux utilisés dans Drupal 10 suivent les meilleures pratiques de Symfony, optimisées pour des performances ultra-rapides. Des éléments tels que la mise en cache, le routage, la création de modèles et le rendu des pages ont tous été repensés dans Drupal 10 pour tirer parti des composants de Symfony axés sur les performances.

Drupal 10 comprend également des mécanismes de mise en cache considérablement améliorés. Il peut désormais mettre en cache des réponses entières au lieu de fragments, ce qui se traduit par une livraison plus rapide des pages après la génération initiale. Le système d'étiquetage du cache utilise le composant de cache de Symfony pour gérer l'invalidation du cache plus efficacement. Grâce aux balises de cache granulaires, seuls les éléments connexes doivent être invalidés, ce qui permet d'éviter les vidages de cache inutiles.

En outre, Drupal 10 regroupe les actifs JavaScript et CSS frontaux, ce qui réduit le nombre de requêtes http du navigateur. Il minifie également ces fichiers, réduisant ainsi leur taille et permettant des téléchargements plus rapides. Le processus de construction des applications frontales est encore optimisé à l'aide d'outils modernes tels que Webpack.

Drupal 10 est conçu pour évoluer efficacement et tirer parti de plusieurs cœurs/threads de processeur pour améliorer la concurrence et le parallélisme. Il suit les meilleures pratiques de Symfony en séparant le code en services découplés plutôt qu'en objets monolithiques.

Sécurité renforcée

Drupal 10 applique automatiquement les mises à jour de sécurité au noyau, aux modules contribués et aux thèmes. Cela facilite grandement le processus de mise à jour pour les administrateurs de sites par rapport à Drupal 7, où les mises à jour devaient être suivies et appliquées manuellement. Les mises à jour automatisées empêchent les sites d'utiliser un code obsolète présentant des vulnérabilités connues que les pirates pourraient exploiter.

Drupal 10 repose sur le framework Symfony, qui intègre des composants de sécurité robustes conçus pour les applications PHP modernes. Ces composants comprennent la vérification des entrées, l'encodage des sorties, les jetons CSRF, la limitation du débit et bien d'autres choses encore. Symfony suit les meilleures pratiques de sécurité dès le départ, ce qui rend Drupal 10 beaucoup moins sensible aux risques d'injection de code comme le cross-site scripting et l'injection SQL par rapport aux versions précédentes.

Drupal 10 fournit également des autorisations utilisateur très granulaires permettant aux propriétaires de sites de mettre en œuvre le principe du moindre privilège en matière d'accès. Cela signifie qu'il ne faut accorder aux utilisateurs et aux administrateurs de sites que les privilèges minimums nécessaires à l'accomplissement de leurs tâches, ce qui réduit les dommages qu'un compte compromis peut causer. Par exemple, les rôles des administrateurs peuvent être personnalisés pour n'autoriser l'accès qu'à certains types de contenu, et non à l'ensemble du site.

Des outils supplémentaires de test de sécurité automatisés ont été incorporés dans le processus de développement de Drupal 10 afin d'identifier et de corriger les vulnérabilités de manière proactive avant la sortie des versions. Des vérifications concernant les scripts intersites, les injections SQL et d'autres vulnérabilités sont désormais exécutées automatiquement à chaque modification du code afin de rester à l'affût des menaces émergentes.

Amélioration du référencement et de l'accessibilité

Drupal 10 intègre les normes web les plus récentes et les meilleures pratiques de développement qui profitent à la fois à l'optimisation des moteurs de recherche et à l'accessibilité.

Pour le référencement, les sites Drupal 10 sont construits à l'aide d'un balisage HTML5 sémantique qui aide les moteurs de recherche à explorer, indexer et comprendre les pages avec précision. D'autres améliorations incluent la prise en charge des balises de métadonnées appropriées, des microformats et de la structuration du contenu dans des formats lisibles par la machine. Cela permet aux moteurs de recherche de mieux interpréter les sites Drupal et de mieux classer les pages.

Le nouveau Layout Builder de Drupal 10 utilise des éléments de section sémantiques pour délimiter les régions de la page. Cela permet d'obtenir des contours de page plus clairs qui aident les robots des moteurs de recherche à comprendre la mise en page et la hiérarchie du contenu.

Drupal 10 ajoute également plusieurs outils de test automatisés afin d'améliorer l'accessibilité pour les utilisateurs handicapés. Des vérifications sont effectuées par rapport aux directives d'accessibilité au contenu web (WCAG) 2.1 pour s'assurer de la conformité avec les taux de contraste recommandés, le texte alt, les rôles ARIA et d'autres normes qui permettent l'utilisation par ceux qui ont besoin de technologies d'assistance telles que les lecteurs d'écran.

En outre, l'évolution vers une architecture Drupal découplée profite également au référencement et à l'accessibilité. Le fait de séparer la diffusion du contenu en arrière-plan de la couche de présentation en amont permet d'optimiser le même contenu pour différents types d'appareils et de canaux. Le contenu Drupal sans tête peut être exploité sur plusieurs plateformes.

Une construction de site plus facile

Drupal 10 apporte des améliorations majeures à la construction de sites et aux flux de développement grâce à la gestion de la configuration.

La gestion de la configuration permet aux composants réutilisables tels que les types de contenu, les vues, les blocs, etc. d'être facilement exportés dans le code par le biais de fichiers YAML et de schémas de configuration. Cela permet d'améliorer la cohérence entre les environnements de développement, d'essai et de production. Les modules de fonctionnalités aident à gérer et à déployer ces configurations réutilisables entre les sites.

Les fichiers YAML standardisés et les schémas cohérents permettent également aux sites Drupal, aux fonctionnalités et aux composants d'être reproduits et partagés de manière fiable entre différents projets. Cela facilite le maintien des normes de développement et des meilleures pratiques au sein des équipes.

Drupal 10 modernise également les flux de travail frontaux en intégrant des outils de construction JavaScript modernes tels que Webpack au lieu de s'appuyer sur des thèmes monolithiques. Les thèmes peuvent désormais simplement fournir des modèles d'interface utilisateur et des bibliothèques réutilisables qui peuvent être compilés et optimisés à l'aide d'outils standard.

Les développeurs n'ont plus à se soucier de vider manuellement les caches après avoir mis à jour le code. Les modifications des schémas de base de données ont également été réduites grâce à l'utilisation de définitions d'entités personnalisées. En outre, des outils de test tels que Rector aident à corriger automatiquement les changements nécessaires dans le code des modules personnalisés lors de la mise à niveau entre les versions majeures de Drupal. Cela facilite le processus de mise à jour.

Meilleure prise en charge des applications mobiles

Drupal 10 adopte une philosophie "mobile-first" dans sa conception et son architecture. L'objectif est de fournir une expérience mobile réactive et transparente dès le départ, sans qu'il soit nécessaire de créer des thèmes mobiles distincts.

Pour ce faire, Drupal 10 utilise les dernières normes de développement web et les meilleures pratiques adaptées à l'expérience mobile. Cela inclut l'utilisation extensive des mises en page CSS Flexbox qui s'adaptent élégamment aux différentes tailles d'écran, des images réactives qui s'ajustent en fonction de la résolution de l'appareil, et des modèles de navigation adaptés aux mobiles.

Le nouveau système de rendu BigPipe permet également d'accélérer considérablement le chargement initial des pages sur les appareils mobiles par rapport à Drupal 7. Pour ce faire, les éléments de la page sont transmis au client au fur et à mesure qu'ils sont disponibles, plutôt que d'attendre que la page entière soit générée sur le serveur.

Plusieurs autres améliorations de l'interface utilisateur mobile ont été intégrées dans le noyau de Drupal 10 pour une expérience optimisée. Il s'agit notamment d'une meilleure prise en charge des interfaces tactiles, du zoom sans contact sur les navigateurs mobiles, de l'application de tailles de police minimales lisibles, ainsi que de superpositions et de menus déroulants conçus en fonction des besoins des utilisateurs mobiles.

Rationalisation de la création de contenu

Drupal 10 apporte plusieurs améliorations qui rationalisent le processus de création et de rédaction de contenu pour les éditeurs de contenu et les concepteurs de sites.

Le nouveau Layout Builder permet de construire des pages par glisser-déposer, ce qui permet aux éditeurs de contenu de réorganiser rapidement et visuellement les éléments de la page sans avoir besoin de l'aide d'un développeur. Cela rend l'expérimentation de différentes mises en page beaucoup plus rapide et intuitive.

L'interface d'administration du backend a également été complètement revue dans Drupal 10 avec une interface utilisateur améliorée qui se concentre sur la simplification des flux de travail pour les créateurs de contenu. L'architecture d'information améliorée et le placement intuitif des options aident les éditeurs à travailler plus efficacement.

Les améliorations du WYSIWYG offrent une expérience de création soignée dès le départ, sans nécessiter de configuration approfondie. Parallèlement, Drupal offre toujours une flexibilité et une extensibilité dans l'intégration d'éditeurs tiers. L'éditeur CKEditor est désormais l'éditeur par défaut.

Les auteurs peuvent également mettre à jour rapidement les blocs de contenu en ligne sans avoir à naviguer vers une page d'édition distincte. Cela permet une prévisualisation et une itération rapides des modifications de contenu.

Le nouveau module médias unifié offre également une interface simplifiée pour la recherche, la gestion, l'insertion et l'affichage de différents types de médias tels que les images, les vidéos et le contenu intégré. Le flux de travail rationalisé permet aux auteurs de gagner du temps.

L'ensemble de ces améliorations permet aux créateurs de contenu et aux concepteurs de sites de se concentrer sur la production rapide et efficace d'un contenu de qualité plutôt que sur les obstacles techniques. L'expérience de création améliorée dans Drupal 10 réduit les frictions.

Tags :

Partager cet article :

FAQ

Drupal 10 offre des temps de chargement de page nettement plus rapides et de meilleures performances que Drupal 7 grâce à des améliorations telles que l'utilisation de Symfony, la mise en cache améliorée, l'optimisation frontale et des requêtes de base de données plus rapides.

Drupal 10 offre une meilleure expérience de création grâce à des améliorations telles que le constructeur de modèles, l'interface d'administration redessinée, les améliorations de l'éditeur WYSIWYG, l'édition en ligne et une meilleure gestion des médias.

Oui, Drupal 10 adopte des architectures découplées comme un CMS sans tête, ce qui permet d'exploiter le contenu sur plusieurs plateformes et points de contact. Cela offre une plus grande flexibilité.

Drupal 10 intègre des améliorations telles qu'un balisage HTML5 sémantiquement correct, des métadonnées appropriées pour le référencement, des tests d'accessibilité automatisés et la conformité WCAG 2.1, ce qui le rend très convivial pour le référencement et l'accessibilité.

Merci de vous être abonné !

S'abonner à notre newsLetter

Votre organisation prévoit-elle de passer de Drupal 7 à Drupal 10 ? Notre équipe de développeurs et d'ingénieurs Drupal expérimentés peut s'associer à vous pour assurer une transition en douceur et réussie vers la dernière version de Drupal. Contactez-nous dès aujourd'hui pour une consultation gratuite sur la façon dont nous pouvons faire de votre migration de Drupal 7 vers Drupal 10 un grand succès !

Paramètres de confidentialité