Drupal / Matthieu Levet / JlGestion FORMATION DRUPAL Support de cours - Mise à

Drupal / Matthieu Levet / JlGestion FORMATION DRUPAL Support de cours - Mise à jour 02/11 Drupal / Matthieu Levet / JlGestion Présentation de Drupal Drupal est un CMS libre et open source créé en 2001 par Dries Buytaert. Il s'adresse à la fois à des débutants ou des programmeurs experts. Sa flexibilité lui permet de répondre à la très grande majorité des besoins du marché: sites institutionnels, blog, annuaire, communautaire, marchand ou intranets. Rapidité de mise en place Drupal permet d'obtenir un site fonctionnel et évolutif en quelques clics sans écrire une seule ligne de code. Modularité L'on peut étendre les possibilités en ajoutant des modules. Ceux-ci sont très nombreux, proposés par la communauté et toujours sous licence libre GPL. Cette architecture permet aux programmeurs de réaliser des modules personnalisés afin d'étendre les fonctionnalités sans pour autant modifier le corps de Drupal. Le code de Drupal La qualité du code et la robustesse de son interface de programmation (API), font que Drupal est également présenté comme un environnement de développement PHP (Framework). On parle alors de « Content Management Framework ». Spécificités de Drupal Drupal est entièrement programmé en PHP. L'ensemble est constitué de modules gravitant au­ tour d'un noyau très léger. Chaque module est en quelque sorte une bibliothèque de fonctions qui enrichit l'application et augmente ses possibilités. Une des forces de Drupal est la possibilité qu'ont les modules d'interagir entre eux. La contrepar­ tie de cette flexibilité est la complexité, ainsi, Drupal propose souvent une ou plusieurs solutions pour résoudre le même problème. D'autre part, le plus dur est quelquefois de trouver «le» mo­ dule qui répondra le mieux à vos besoins. Un autre point qui distingue Drupal des autres CMS est que le site et son interface d'administra­ tion sont intimement liés: les administrateurs éditent leur contenu dans le même contexte gra­ phique ou presque que celui du visiteur. Cette fonctionnalité peut-être déroutante au premier abord, mais est par la suite particulièrement productive et intuitive. Comme tous les CMS, l'architecture d'un site Drupal repose sur un modèle de contenu spécifique qui permet de structurer l'information. Drupal utilise un système de noeud couplé à une taxono­ mie particulièrement flexible. Drupal / Matthieu Levet / JlGestion Concepts fondamentaux de Drupal Le node et le type de contenu Le nœud est l'élément central du modèle de contenu employé par Drupal. Dans sa version la plus simple, un nœud est un objet générique composé d'un titre et d'un contenu de type texte. Toute la puissance de Drupal réside dans la possibilité de spécialiser un nœud en lui adjoignant des champs supplémentaires. C'est ainsi que l'on va créer ce que l'on appelle un nouveau type de contenu. Ainsi, chaque élément de contenu présent dans un site Drupal est un nœud et chaque nœud appartient à un type de contenu. La distribution de base vient avec deux types de contenu (article et page). Ce sont des types de contenu génériques qui conviennent à de nombreuses situations. Cependant, vous aurez certai­ nement besoin d'autres types de contenu. Drupal vous permet de les créer soit par le truchement de modules optionnels soit par l'utilisation d'un module indispensable appelé CCK. Pour différencier un type de contenu, vous pouvez lui associer de nouveaux champs. Grâce à ses modules, Drupal dispose d'une multitude de champs qui vous permettront de stocker des élé­ ments de contenu extrêmement variés : texte, chiffre, date, url, numéro de téléphone, image, vidéo, carte. Exemple : Pour votre site d'actualités, vous considérez que le contenu de type Article n'est pas suffisam­ ment structuré, vous pouvez alors créer un nouveau type de contenu Article_Journal et lui ad­ joindre un sous-titre (champs texte) et une image principale (champ image). Types de contenu standards Les types de nœud par défaut de Drupal sont : Article Contenu court et/ou traitant d'un point précis (sans lien direct avec d'autres articles). Ils compor­ tent un titre et un corps de texte, mais peuvent être étendus par d'autres modules. L'accroche fait également partie du corps. Les articles peuvent être utilisés dans un blog personnel ou dans un site d'actualités. Page Contenu plutôt statique ou page orpheline (typiquement la page de crédit du site, une page de présentation). Quelle est la différence réelle entre une «page» et un «article» ? Pour faire court : aucune. En réalité, il y en a une, mais c'est uniquement au niveau de l'affichage par défaut de ces pages sur le site. En effet, au contraire d'un article, une page n'affiche pas les informations de l'auteur et la date de publication, d'autre part, les commentaires sont désactivés par défaut. Ces paramètres d'affichage sont aisément modifiables ce qui fait que au final, d'un point de vue technique il n'y a aucune différence. Drupal / Matthieu Levet / JlGestion L'intérêt est ailleurs, la différentiation des types de contenu est un moyen à la disposition du concepteur pour bâtir un modèle de contenu adapté au besoin. Dans ce cas, cela permet de séparer strictement et de traiter différemment les informations statiques d'une « page » (C.G.V, à propos…) qui sont rarement mises à jour, des informations dynamiques d'un « article » dont la durée de vie est plus faible (nouvelles, promotions…) Livre Ensemble de nœuds liés entre eux par des liens hiérarchiques (parent, enfant, frère). Cette struc­ ture hiérarchique (un sommaire) est générée automatiquement à l'affichage d'un nœud de ce type. Comme son nom l'indique, ce contenu est adapté à un contenu structuré en chapitre et sous-chapitre, un contenu organisé autour d'une progression logique. Un livre est un effort collectif d'écriture : les utilisateurs peuvent collaborer à l'écriture des pages du livre, positionner les pages dans le bon ordre, et passer en revue ou modifier les pages écrites précédemment. Et si j'ai besoin d'autres types de contenu ? Il est tout à fait possible dans Drupal de rajouter autant de type de contenu qu'on le souhaite. Pour ajouter de nouveaux champs, il faut néanmoins utiliser un module qui n'est pas livré avec la distribution de base, CCK, ou le programmer via un module personnel. L'utilisation de CCK est intuitive et ne nécessite pas de connaissances en programmation : Il suffit de donner un nom (et quelques autres options) à un nouveau type de contenu pour qu'il soit directement exploitable. On peut lui ajouter autant de champs que nécessaire presque aussi simplement. Bien entendu, comme tous les modules Drupal, CCK est disponible librement sous licence GPL. Commentaires Les commentaires sont des éléments classiques d'un CMS communautaire et ont été popularisés par les blogs. C'est la base de l'interaction entre le(s) éditeur(s) d'un site et les lecteurs, car ils per­ mettent à ces derniers de commenter le contenu en question. Dans Drupal, les commentaires ont pour particularité de ne pas être des nœuds. Ce sont donc des éléments à part dans le modèle de contenu. Cette architecture a été retenue parce que plus performante et donc capable de gérer des milliers de commentaires. Concrètement, cela signifie qu'ils ne seront pas exploitables de la même façon que les autres contenus, mais on peut tout de même les personnaliser comme on le souhaite. Tous les nœuds de Drupal peuvent recevoir des commentaires et on peut paramétrer la manière dont ceux-ci se comporteront. Ces réglages peuvent être différents pour chaque type de contenu ou même pour chacun des nœuds. Catégories, vocabulaire, taxonomie, terme La taxonomie est le concept qui permet la structuration des différents éléments de contenu d'un site Drupal. Très puissant et flexible il est parfois difficile à appréhender, car il utilise des mots qui ne font pas partie du langage courant : terme, vocabulaire et taxonomie Le « terme » est l'étiquette qui va servir à désigner un regroupement de différents nœuds. Drupal / Matthieu Levet / JlGestion Un « vocabulaire » est un groupe de plusieurs « termes ». La « taxonomie » va préciser le type de relation qui existe entre les termes d'un même vocabu­ laire. * La taxonomie libre : les termes peuvent être choisis sans contrainte * La taxonomie simple : un seul terme par contenu * La taxonomie multiple : plusieurs termes peuvent être choisis parmi une liste prédéfinie Enfin une taxonomie peut définir des relations hiérarchiques entre les termes afin de définir des catégories et sous catégories. Drupal permet donc de créer un vocabulaire pour chaque besoin de classification qu'il peut avoir dans un site. Par exemple, un site de recettes de cuisine pourra avoir un vocabulaire « Tag » de taxonomie libre pour classer les contributions des lecteurs avec des termes divers comme « épice » ou « facile » et avoir en même temps un vocabulaire « Région » de taxonomie simple pour clas­ ser la provenance des recettes avec des termes comme « Auvergne » ou « Bourgogne ». Bloc Les blocs sont des éléments de contenu spécifiques. En général, ils sont utilisés pour afficher une information secondaire (commentaires récents), un contenu lié au contenu principal (pro­ fil de l'auteur de l'article) ou pour afficher des éléments de navigation (menu, formulaire de uploads/Litterature/ cours-drupal-fr.pdf

  • 22
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager