Différence clé: Drupal 8 présente de nombreuses différences par rapport à Drupal 7. Une des différences majeures est le remplacement du moteur de thème par défaut de PHPTemplate par son propre Twig. Drupal 8 offre une meilleure intégration CSS et JavaScript, mais il modifie également la manière dont ils doivent être ajoutés. Il lance également de nombreuses nouvelles fonctionnalités.
Selon le site Web Drupal, «Drupal est un outil de gestion de contenu Web prêt à l'emploi ainsi qu'une plate-forme personnalisable». Cela signifie que le logiciel peut être utilisé tel quel ou modifié pour répondre aux besoins de chacun. . Le site Web se vante de dire que «Drupal est la plate-forme n ° 1 pour la gestion de contenu Web parmi les entreprises mondiales, les gouvernements, les établissements d’enseignement supérieur et les ONG» et qu’il est utilisé par plus d’un million de sites Web.
Avec le lancement de Drupal 8, la société a annoncé que Drupal 8 offrait des fonctionnalités de création de contenu simplifiées, qu’il était conçu pour une expérience mobile d’abord sur mobile, qu’il prenait en charge davantage de langues ainsi que de meilleures traductions d’interface. La société indique également que, par rapport à 7, 8 prend en charge un meilleur écosystème pour les intégrations numériques, ce qui signifie qu'elle prend mieux en charge les services de messagerie, d'analyse, d'automatisation du marketing et d'autres solutions technologiques numériques.
Drupal était à l'origine basé sur PHP, cependant, dans Drupal 8, la société a remplacé le moteur de thème par défaut de PHPTemplate à Twig, qu'elle introduit maintenant. Cependant, cela laisse craindre que les utilisateurs migrant de Drupal 7 à 8 doivent réapprendre et modifier le code. Par exemple: les fonctions theme_ * et les fichiers * .tpl.php basés sur PHP ont maintenant été remplacés par * .html.twig templates ().
Il y a des changements supplémentaires dans la manière dont Drupal 7 et Drupal 8 traitent les CSS et JavaScript. Drupal 8 offre une meilleure intégration CSS et JavaScript, mais il modifie également la manière dont ils doivent être ajoutés. Alors que Drupal 7 utilisait les fonctions drupal_add_css () et drupal_add_js () pour ajouter du CSS ou JS, Drupal 8 attache ces actifs à la propriété #attached d'un tableau de rendu à l'aide de bibliothèques.
Veuillez vous reporter au tableau ci-dessous pour connaître les différences supplémentaires entre Drupal 7 et Drupal 8.
Comparaison entre Drupal 7 et Drupal 8:
Drupal 7 | Drupal 8 | |
Type de | Logiciel de gestion de contenu (CMS) | Logiciel de gestion de contenu (CMS) |
Coût | Libre | Libre |
Libéré | 5 janvier 2011 | 7 octobre 2015 |
Maturité | Plus vieux, mûri avec le temps, il contient de nombreux modules, de la documentation et de nombreux tutoriels. | Plus récent, moins mature, et a moins de modules, moins de documentation et moins de tutoriels. |
Sortie | Balisage XHTML par défaut | Balisage HTML5 sémantique par défaut |
Bibliothèques front-end | jQuery v2.x | jQuery v2.x, Modernizr, Underscore.js et Backbone.js. |
Balisage Schema.org | Ne génère pas de balisage schema.org | Le module RDFa principal de Drupal 8 affiche les balises schema.org |
Attributs WAI-ARIA | Utilisation peu répandue des attributs WAI-ARIA. | Utilisation intensive des attributs WAI-ARIA. |
Support IE | Prend en charge les IE 6, 7 et 8 | Supprime le support pour IE 6, 7 et 8 |
jQuery | Drupal 7 inclut jQuery 1.4.4 et jQuery UI 1.8.7 | Utilise jQuery 2.0 et un autre code qui suppose le support moderne des navigateurs HTML5 / CSS3. |
Support SVG | Navigateurs pris en charge qui ne prennent pas en charge SVG (notamment IE8 et Android Browser 2.3) | Ne supporte pas les navigateurs ne supportant pas SVG (y compris IE8 et Android Browser 2.3) |
Moteur de thème par défaut | PHPTemplate theme_ * fonctions et fichiers * .tpl.php basés sur PHP | Introduit brindille * .html.twig modèles () |
Agrégation CSS et JavaScript | Agrégation CSS et JavaScript moins efficace que 8 | Amélioration de l'agrégation CSS et JavaScript. |
Ajout de CSS ou JS | Fonctions drupal_add_css () et drupal_add_js () | Associe des actifs JS / CSS à la propriété #attached d'un tableau de rendu à l'aide de bibliothèques |
Changements de classe CSS dans le menu | .menu li.expanded .menu li.collapsed .menu li.leaf .menu li.active-trail .menu li.first .menu li.last | .menu-item – développé .menu-item – réduit .menu-item – active-trail .menu-item: premier-enfant .menu-item: dernier-enfant .menu-item — feuille - supprimé |
Identifiants CSS | Contient plus d'identifiants que le CSS de Drupal 8. | Contient moins d'identifiants que le CSS de Drupal 7. |
Structure CSS (fichier) | La structure CSS (fichier) n'est pas basée sur SMACSS & BEM. | La structure CSS (fichier) est basée sur SMACSS & BEM. |
Pseudo-sélecteurs CSS3 | Utilisé en premier / dernier / impair / pair | Utilise les pseudo-sélecteurs CSS3. |
Modules de base | De nombreuses fonctions de prétraitement et fichiers CSS sont inclus dans les modules de base. | Remplace de nombreuses fonctions de prétraitement et fichiers CSS précédemment inclus dans les modules principaux en utilisant Classy, un thème de base principal qui injecte des classes dans le balisage et inclut le code CSS correspondant. |
Interrogations sur les points de rupture | N'utilise pas les requêtes de média de point d'arrêt pour contrôler l'apparence du site sur différents périphériques. | Utilise des requêtes de média de point d'arrêt pour contrôler l'apparence du site sur différents périphériques. |
Des vues | Views est un module ajouté | Vues est ajouté en tant que l'un des modules de base |
CkEditor | N'utilise pas CkEditor | CkEditor, un module de base de Drupal 8, est un éditeur visuel HTML utilisé pour l'édition de pages Web qui apporte les fonctionnalités courantes du traitement de texte directement aux pages Web. |
Édite | Doit aller à la page d'édition pour apporter des modifications | L'éditeur en ligne permet de modifier le contenu d'une page sans passer par la page de modification, mais par un simple clic droit pour le modifier. |
Module d'image | N'a pas de module d'image | Caractéristiques Picture Module qui redimensionne automatiquement les images pour différents écrans. |
Symfony | N'inclut pas le framework Symfony | Utilise le framework Symfony et son architecture MVC qui facilite la maintenance, l’échelle et la réutilisation du code. |
Concepts de POO | A moins de concepts de programmation orientée objet | Livré avec les concepts de programmation orientée objet dans la majeure partie du système |
DU REPOS | Ne comporte pas de REST | Representational State Transfer (REST) permet une interaction avec d'autres applications pour la création, la lecture, la mise à jour et la suppression de ressources. |
Nouveau champ de courrier électronique | Courriel simple | Email Field valide automatiquement l'adresse e-mail et génère un lien 'mailto:' lorsqu'il est affiché. |
Nouveau champ téléphonique | Téléphone simple | Telephone Field génère un lien "tel:" lorsqu'il est affiché pour des applications de téléphonie telles que Skype et d'autres. |
Référence: Drupal, Drupal 8, Drupal 7 vs 8, Zyxware Image courtoisie: churchm.ag, drupal.org