Présentation et découverte des nouveautés et forces de Drupal 8

Submitted by Kyna on lun, 11/24/2014 - 02:17

Drupal 8, un CMS Open Source

La principale force de Drupal est sans conteste sont coté Open Source, qu’est ce que cela signifie ? Tout simplement que Drupal (depuis sa création) est gratuit, peut être téléchargé et partagé légalement sans ce sans aucune limites, tout en offrant aux professionnels une base pouvant servir à la création d’un projet étant destiné à être vendu ou non. Pour faire simple, avec Drupal, vous pouvez créer tout ce que vous souhaitez. Cela peut être un simple blog pour créer et partager votre avis sur les films populaires du moment, comme un site professionnel permettant à un chef cuisinier de mettre en avant son restaurant tout en permettant aux clients d’y réserver à l’avance une table à tarif préférentiel depuis le site.

Il faut donc retenir cela : Drupal 8 n’est pas un simple moteur de blog, c’est un véritable CMS destiné à créer toute sorte de sites quelque soit leurs usages et thématiques !

Tout comme Wikipedia, Drupal tire partie de sa communauté d’utilisateurs et de contributeurs qui participent à l’amélioration du cœur, que ce soit du coté de la sécurité, des fonctionnalités, ou même de l’optimisation, la communauté à une grande part de mérite dans la création de Drupal 8 et c’est là que réside toute la force du CMS et fait de lui ce qu’il est devenu aujourd’hui, un des plus grand CMS existant au monde :

  • Plus d’un million de sites tournent sous Drupal, dont 12 000 d'entre eux qui représentent 12 % des 100 000 sites mondiaux qui concentrent le trafic le plus important sur Internet.
  • 31.000 développeurs
  • 228 pays
  • 181 langues
  • 26 000 modules
Drupal 8 - Le CMS libre de demain !

Une compatibilité HTML5 et une ouverture sur le mobile !

Le support de la norme HTML5 par Drupal 7 était un des gros manques à combler, Drupal 8 corrige cela et est désormais totalement compatible HTML5. Parmi les principaux changements apportés par cette nouveauté, on retrouve notamment la prise en charge de la validation des formulaires par les navigateurs, pour donner un exemple tout simple, sur votre téléphone portable, lorsque vous sélectionnerez un champ de type email, vous aurez automatiquement accès au signe [email protected] sans avoir à aller le chercher dans les caractères spéciaux, au delà de ce genre de petite fonctionnalité utile, le support de l’HTML5 permet également de reconnaitre les données saisie, par exemple si l’on vous demande de saisir une url et que vous y mettez autre chose, le champs affichera une erreur et le formulaire ne pourra être validé tant que celle-ci ne sera pas corrigé.

Le support de l’HTML5 et du CSS3 (principalement des Media Queries) permet également la création de design dit fluide et responsive, c’est-à-dire que quelque soit la taille de votre écran, votre thème s’adaptera pour être correctement affiché. Le meilleur exemple dans Drupal 8 est sans doute son menu de navigation, si vous le laissez sous forme de barre horizontale en haut de votre écran et redimensionnez la fenêtre de votre navigateur, vous verrez alors apparaitre une version plus compacte de menu à gauche de l’écran afin de faciliter l’accès et l’utilisation sur mobile tout en prenant moins de place sur l’écran.

Note : Les développeurs gardent bien entendu le choix de l’utilisation ou non de ces fonctionnalités, rien n’est imposé, on garde bien un contrôle total sur notre travail !

Symfony 2 - Une base solide qui a fait ses preuves

La plus grande surprise annoncé avec Drupal 8 est sans conteste le fait que le CMS reposera sur le cœur même du populaire Framework PHP Symfony 2.Symfony est un des Framework parmi les plus populaires au monde, des sites connus comme OpenClassRooms (anciennement connu sous le nom : site du zéro - sdz) ou encore Dailymotion lui ont fait confiance pour créer des sites ayant une base solide ! Pour ceux qui se demandant à quoi sert ici Symfony 2, il est utilisé pour développer le cœur même de Drupal, c’est le cœur de Symfony 2 qui permet à Drupal d’avoir de jolie url, de construire des formulaires de manière intuitive et puissante. Bref si le cœur (core) de Drupal 8 devait avoir lui aussi son cœur, on pourrait dire que Symfony 2 serait celui-ci.

Symfony 2 a été créé par Fabien Potencier, le Framework est Français tout comme son créateur et bénéficie donc d'une documentation française depuis peu !

Un partage des connaissances

Drupal 8 a ses codes, ses bonnes méthodes, ainsi sa documentation officielle, de ce fait, développer un site ou un autre avec Drupal laisse un air de déjà vus dans la manière de faire et de travailler, car c’est pour cela que Drupal 8 a aussi été créé, les méthodes de travail pour développer sur le CMS ont évolué et sont désormais les mêmes pour tout le monde, un développeur Drupal devrait facilement passer d’un projet à un autre tout en s’y retrouvant facilement. Cela facilite le travail à plusieurs sur un même projet et permet à la communauté d’apporter plus facilement un support efficace à ceux qui en ont besoin, un développeur qui code en programmation orienté objet (POO) sur Symfony 2 comprendra normalement assez facilement le code d’un module et la manière dont il est agencé.

Une autre des grosse force de Drupal 8 est également sa communauté, qu’elle soit anglaise ou française, on y trouve son compte, le partage des connaissances se fait à travers des tutoriels (comme celui sur lequel vous vous trouvez en ce moment même) sur le web, mais aussi via des forums communautaires. Si vous bloquez sur un problème, il y aura donc probablement toujours quelqu’un pour vous aider ou au moins une solution trouvable sur internet avec une petite recherche.

Un environnement modulaire

Une des grosses forces qui permet de distinguer un site d’un autre réside dans les fonctionnalités qu’un site peut offrir à ces utilisateurs et administrateurs. Drupal 8 est modulaire, cela veut dire que la communauté de développeur peut créer des fonctionnalités uniques qui n’existent pas de base dans Drupal et peuvent les partager sous forme de module. Un module est représenté sous la forme d’un dossier que l’on place dans son installation et qui s’active ensuite depuis l’interface d’administration du site, les ajouts que peuvent apporter un module peuvent être petit comme très grand, on peut imaginer un module « forum » qui apporterais toutes les fonctionnalités nécessaire à Drupal pour créer et gérer des catégories, des forums et des sujets par exemple.

En bref, ce sont les modules qui vous permettrons d’ajouter des fonctionnalités à votre site, il en existe des milliers pour chaque versions de Drupal, ces modules peuvent principalement être trouvé et trié sur le site officiel à l’adresse suivante : Page de téléchargement des modules pour Drupal.

Notons également que les principaux modules de Drupal 7 ont été intégré au cœur même de Drupal 8, ce signifie qu’ils bénéficieront désormais d’un support et de mises à jour officielle au même titre que le cœur du CMS.

Ces modules sont nombreux, en voici quelques un :

  • Views, véritable couteau suisse, ce module permet de créer des vues, et d’y afficher du contenu que l’on peut reformater et filtrer par contexte, beaucoup d’autres options sont également apporté par ce module, nous y reviendrons plus tard dans le tutoriel le présenter plus en détail et montrer ses limites et possibilités.
  • Layouts, ce module permet de définir pour un même thème différentes architectures de page, cela permet de créer des designs à la carte, évolutifs et variés.
  • Multilingual / i18n, Permet de télécharger et d’installer automatiquement les traductions pour votre CMS, ce module est un des indispensable pour avoir un site multilingue.

Une apparence personnalisable

La première chose qui différencie un site d’un autre lorsque l’on arrive sur une page, c’est bien son visuel. L’apparence d’un site peut permettre d’indiquer au premier coup d’œil au visiteur, la thématique du site sur lequel il se trouve. Le design d’un site peut également participer à sa notoriété tout en permettent de conserver plus longtemps ses visiteurs sur son site à partir du moment où le thème installé sur votre site est agréable au regard, et bien structuré de manière à faciliter la navigation de page en page sans que l’utilisateur ne puisse s’y perdre.

Drupal 8 permet la création et l’installation d’un nombre illimité de thème, ces derniers peuvent être créé depuis zéro et sur mesure, ou bien être téléchargés sur internet que ce soit gratuitement sur drupal.org, ou sur des sites de ventes spécialisé comme l’incontournable themeforest.net.

Une autre nouveauté de cette version de Drupal qui devrais plaire énormément aux graphistes et utilisateurs de Symfony 2, est l’apparition du moteur de template TWIG. Cette librairie permet de changer la façon dont on appel du code PHP dans nos vues tout en remplacent ce code par un autre (twig) ayant une syntaxe beaucoup plus simple et claire. Pour ceux qui connaissent un peu le langage PHP, ce code :

< ?php if(isset($hello)) { echo htmlspecialchars($hello); } ?>

 Peut (et doit, dans Drupal 8) être remplacé par :

{% if hello is defined %} {{ hello }} {% endif %}

Comme vous pouvez le voir, le code n’est pas forcement plus court, mais on y gagne énormément en lisibilité (encore plus avec une coloration de la syntaxe, nombre d’éditeur de texte sont compatibles) et donc en compréhension. La syntaxe TWIG est donc plus simple, plus rapide à écrire, et promet donc un travail plus agréable aux graphistes qui peuvent ne rien connaitre au langage PHP, tout comme au développeur lambda, qui devrait également y trouver son compte tout en gagnant en productivité.

Un support des sites multilingues

Drupal 8 est conçu de façon a pouvoir créer des sites dans toute langue, mais aussi dans plusieurs langues à la fois. Il est possible d’adapter le langage du contenu ainsi que de l’interface à celle de vos utilisateurs, afin de s’assurer que ce dernier voit le site dans la bonne langue si cela est possible.

Les options de détection de langue sont divers et variés, et l’administrateur peut choisir ce qu’il préfère, comme d'habitude, dans Drupal, rien n'est imposé.

Ce chapitre est enfin terminé, nous verrons lors du prochains chapitres, comment télécharger et installer Drupal 8. A bientôt !

Comments