Fiche logiciel validé
  • Création ou MAJ importante : 19/09/08
  • Correction mineure : 07/04/09
Auteur :
  • Alban Politi - LCMCP (Univ. Paris 6, CNRS, ENSCP, Collège de France, EPHE)
Relecteur(s) :
Responsable thématique :
Mots-clés

Drupal : gestion de contenu Web (CMS) collaboratif

Description
Fonctionnalités générales : 

Drupal est un système de gestion de contenu Web (CMS) à même de créer et gérer des sites web d’informations structurées et classifiées.
Il permet de créer une grande variété de sites, du blog personnel au site communautaire ou d’information.
Il peut être utilisé pour gérer des sites collaboratifs regroupant forum d’échanges, annonces, agendas d’évènements, sessions de conférences, gestion de groupes de travail.
Drupal est maintenant totalement francisé mais pas l’intégralité des modules non officiels.
Le contenu informationnel se situe classiquement dans une base de données SQL. Le choix proposé de base est MySQL/ PostGSQL, mais d’autres SGBD sont possibles car l’accès aux données repose sur une couche d’abstraction logicielle (cf. l’article d’IBM sur Drupal et DB2 Express-C, son produit gratuit).

Caractéristiques de base

  • Architecture en modules rendant le produit facilement extensible, grâce à une API
  • Permissions basées sur des rôles pour définir les actions autorisées, les contenus visibles et les contenus éditables
  • Contenu totalement indexé pour le système de recherche
  • Support des blogs, forums, sondages, commentaires et fils RSS
  • Interface unique pour le front-end et le back-end
  • Suivi des logs, statistiques de visite
  • Aide en ligne
Autres fonctionnalités : 

Quelques détails des principales fonctionnalités : rôles, types de contenu, classification, présentation du contenu et modules complémentaires.

Rôles
Suivant l’importance du rôle de l’utilisateur, l’interface se voit enrichie de menus d’administration et de possibilités d’édition du contenu.
Les rôles sont définissables très finement, en autorisant ou non des actions dans chaque domaine de fonctionnalités.
Par ex. tel “administrateur” pourra gérer les types de contenu et leur classification, tel autre les utilisateurs, un troisième les forums et les commentaires, et un autre jouer uniquement le rôle de modérateur.
Typiquement, on aura les rôles: visiteur (anonyme), rédacteur, responsable de rubrique ou d’équipe, administrateur.

Types de contenu
En dehors des contenus de type “commentaire”, “billet personnel” (blog), “sujet de discussion” (forum) et “sondage” (poll), on distingue principalement 3 types de contenus prédéfinis :

  • “image”: une image avec son format réduit (thumbnail) et une description.
  • “page”: conseillé pour les contenus qui constituent en eux-mêmes une page Web (statique ou dynamique), propre au site pour les pages personnelles par exemple.
  • “récit” (story): conseillé pour les informations souvent simples et courtes, destinées à être affichées en listes.

Cette distinction a pour effet de proposer des catégories d’indexation spécifiques.

Il existe encore un contenu prédéfini “livre” (book) adapté à la rédaction collaborative de livres à contenu hiérarchisé en chapitres, sous-chapitres, etc.

On a en outre la possibilité de définir son propre type de contenu, grâce à un module additionnel au choix, soit “flexinode”, soit “CCK” (Content Construction Kit) apparu depuis la v. 4.7 de Drupal.

On parle de “noeud” (node) pour désigner une information accessible par un identifiant.

On distingue aussi 3 “formats d’entrée” de données, personnalisables :

  • Filtered HTML
  • Full HTML
  • PHP code

Un “nœud” peut recevoir plusieurs types de statuts : publié, à modérer, en page d’accueil, en tête de liste, nouvelle version.
Le statut “à modérer” peut, par défaut, être assigné au contenu créé par un rôle, s’il n’a pas l’autorisation “administrer les nœuds”.

Classification
La puissance et l’originalité de Drupal réside dans sa gestion très évoluée de la classification des données selon un système taxinomique (taxonomy) dynamique.
La classification peut être simple, multiple, hiérarchisée, et même multi-hiérarchique (un terme d’indexation peut avoir plusieurs parents).
On n’est pas limité à 2 niveaux hiérarchiques seulement, comme dans beaucoup de CMS.
Les termes d’indexation (ou labels, tags) sont groupables en “vocabulaires” au sein desquels les termes peuvent être associés entre eux (related terms) et pour lesquels on peut définir des synonymes.
Une API existe pour accéder aux fonctions reliées à la taxinomie.

Cette gestion de la taxinomie permet par ex. ceci :

  • indexer les informations sur la hiérarchie des services d’une organisation.
  • générer un glossaire des informations classé par termes, avec synonymes et renvois vers des termes reliés.
  • un laboratoire de recherche pourra indexer ses publications sur ses auteurs et sur la revue, grâce à des vocabulaires ‘Revues’ et ‘Auteurs’.

Il faut noter la simplicité d’accès aux informations, par termes d’indexation, grâce à de simples urls, par ex. http://chemin-site/?q=taxonomy/term/37,94,125 génèrera la liste des publications (id. 37), pour l’année 2004 (id. 94), pour un chercheur donné (id. 125).

Présentation du contenu
Le contenu et la présentation sont bien séparés (XHTML 1.0 Transitional, CSS).
Des templates (moteur officiel ‘phptemplate’ depuis la v. 4.7) gouvernent la présentation des “nodes”, des commentaires, blocs, boîtes, ou tout type donnée défini par l’utilisateur.

Modules complémentaires
Il en existe plusieurs centaines, qui ajoutent des fonctionnalités au logiciel de base : http://drupal.org/project/Modules

Modules communautaires

  • “Organic Group” (OG modules)
  • “CivicSpace” qui propose une version packagée de Drupal

Editeurs HTML

  • FCKEditor
  • Htmlarea
  • Textile
  • TinyMCE
  • WYMeditor

Module LaTeX

  • DruTeX

Modules de localisation

Modules de “Mapping/Geocoding”

Modules d’Agendas et Calendriers

Modules de calcul

Interopérabilité : 

Export des pages Web en format xml (… et formats d’échange du SGBD)

Contexte d'utilisation : 

Site Web d’un laboratoire d’enseignement et de recherche (60 pers.) ouvert en avril 2007.
Gestion des membres, équipes, thèmes de recherche, cours, productions, annonces.

Quelques raisons du choix de Drupal
(début 2006, une évaluation des CMS Drupal, SPIP et Mambo (Joomla) nous a conduit au choix de Drupal)

  • puissance du classement dynamique en catégories de Drupal
  • prise en main facile de Drupal par rapport à Mambo
  • interface unique par rapport à SPIP
  • cohérence et simplicité de l’architecture de Drupal
  • exotisme des “boucles” de SPIP, apparemment pas si simples à maitriser
  • documentation et forums de Drupal, comme bonne source d’information vivante
Limitations, difficultés, fonctionnalités importantes non couvertes : 

Le choix de l’éditeur html reste entier (éternel débat?); “TinyMCE” a des défauts, notamment de ne pas afficher entièrement l’aspect réel de la page, et de ne pas bien gérer le filtrage de balises offert par Drupal.
Il existe aussi le produit “widgEditor”, plus simple (trop?), avec moins de fonctionnalités mais peut-être plus adapté aux rédacteurs html non spécialistes, qui importent par ex. du html/word.

L’upgrade est parfois compliqué d’une version à une autre, même mineures (ex. 4.6 -> 4.7)

La version 5 apporte nombre d’innovations mais aussi de changements dans les fondements du système, ce qui peut rendre complexe la migration d’un site : les types de données personnalisés (flexinode) doivent être convertis dans le nouveau système de création de contenu (CCK), et le filtrage d’accès aux informations reconçu.

La liste qui suit montre que la fréquence de sortie des versions majeures est élevée. Revers de la médaille, cela implique une fréquence de mise à jour en conséquence, car le support de sécurité d’un site pourra disparaitre après à peine une année, dans la mesure où seules les 2 dernières versions sont supportées.

L’envoi de fichiers (upload) implique de pouvoir configurer les droits d’accès aux répertoires d’upload en mode 777, donc d’avoir accès au système de fichiers du serveur.

Environnement du logiciel
Distributions dans lesquelles ce logiciel est intégré : 

L’organisation “CivicSpace” propose une version packagée de Drupal pour les associations et les lobbies citoyens : http://civicrm.org/

Plates-formes : 

Serveur
Unix ou Windows comportant Apache (recommandé) v.1.3 ou v.2.x, ou IIS (possible) v.5 ou v.6, PHP 4.3.3 ou + (marche avec PHP 5.2), et MySQL 3.23.17 ou 4.0 (versions 4.1 ou 5.0 recommandées) ou PostgreSQL version 7.3 ou +.
Note: Drupal 7 will be developed for php 5.2.

Client
Tous types de navigateurs web (sur toutes plates-formes ?) : Firefox, Netscape, Microsoft Internet Explorer 6 et 7, Mozilla, Safari 2.x.

Opera n’a pas été testé.
Safari 1.x est incompatible avec les outils de l’éditeur TinyMCE.

Autres logiciels aux fonctionnalités équivalentes : 

Quelques informations :

Environnement de développement
Type de structure associée au développement : 

Communauté de développeurs bénévoles.

Eléments de pérennité : 

Drupal est âgé de plus de 6 ans, l’activité de développement est très forte, on compte entre 6 mois et un an entre la sortie de 2 versions majeures successives.
Historique des versions: http://drupal.org/CHANGELOG.txt
A la sortie de Drupal 4.7.0, en mai 2006, on pouvait lire : “100+ Drupal professionals, 300+ third party modules, and over 55,000+ Drupal powered sites”.

Références d'utilisateurs institutionnels : 

Sites français

Mais aussi :

Sites étrangers

  • NASA, IBM, Yahoo, SpreadFireFox, SVM Mac, MTV
  • Réseau de recherche d’excellence européen “FAMEnoe” : http://www.famenoe.org/
Environnement utilisateur
Liste de diffusion ou de discussion, support et forums : 
Documentation utilisateur : 

En ligne

Livres (en anglais)

  • Pro Drupal Development (Avril 2007 par John K. VanDyk et Matt Westgate)
  • Drupal : Creating Blogs, Forums, Portals, And Community Websites (par David Mercer)
  • Building Online Communities With Drupal, phpBB, And WordPress (un peu daté)
Divers (astuces, actualités, sécurité) : 
Contributions : 

Commentaires

Thème Instituts CNRS

Bonjour,

J’ai développé pour l’INSU un sous-thème de Zen qui suit la charte graphique du CNRS, il pourrait servir de base pour d’autres sites CNRS, me contacter au besoin.

conférence à Paris en septembre

La prochaine conférence Drupal aura lieu à Paris du 1er au 5 septembre !
Tout est sur le site :
http://paris2009.drupalcon.org/

Geneviève Romier

Vous hésitez?

Essayez la version portable : une des webapps chez framasoft : http://framakey.org/WebApp/Index

Des vidéos pour débuter : http://php.opensourcecms.com/free/videos.php

DrupalCon DC 2009 en ligne

les vidéos de la conférence annuelle sont en ligne :
http://drupal.org/DrupalCon-DC-2009-Session-Videos

Geneviève Romier

Drupal sélectionné pour le Google Summer of Code 2009

L’appel aux candidatures étudiantes est lancé. pour en savoir plus :

http://drupal.org/node/406548

Geneviève Romier

Livres (Francais)

Il existe 2 livres en français :
Atelier Drupal 6 de Cyprien Roudet au éditions CR éditions
Le Campus Drupal 6 de David Mercer au éditions PEARSON
-------------------------------------------------------------------
Joseph Giral
LAMETA - UMR5474 (CNRS-UM1-INRA-ENSAM)

liste plume-drupal

Suite à plusieurs demandes de certains d’entre vous, nous venons d’ouvrir une liste pour discuter autour du CMS Drupal que nous utilisons pour la plate-forme Plume. Cette liste n’est pas destinée à remplacer les listes du projet mais plutôt à les compléter en offrant un espace de discussions francophone pour la communauté enseignement supérieur recherche (adresses de messagerie profesionnelles).

Si vous n’êtes pas tout à fait de notre communauté mais intéressé, contactez le propriétaire, des exceptions peuvent être envisagées.

Seuls les abonnements sont modérés.

Pour vous inscrire et participer aux discussions :
http://www.services.cnrs.fr/wws/info/plume-drupal

Geneviève Romier

sire drupal france inactif

A noter que le site Drupalfrance indiqué au point divers est inactif depuis début octobre et que les informations ont été reportées sur le site
http://felisite.com/
Ces deux sites sont maintenus par une petite entreprise Lilloise.
Geneviève Romier

BibNum: un projet réalisé sous Drupal

Voici un projet utilisant Drupal développé par le CERIMES (Centre de ressources et d’information sur les multimédias pour l’enseignement supérieur - http://www.cerimes.fr/ ).

http://www.bibnum.education.fr/

BibNum est un projet de bibliothèque numérique de textes scientifiques antérieurs à 1940, commentés par des scientifiques contemporains qui souhaitent partager leur intérêt pour ces textes et analysent leur impact dans la science et la technologie actuelle.

Le développement de BibNum peut être mis gratuitement à disposition des établissements publics qui souhaitent développer un projet compatible avec les premiers développements et partager les évolutions futures.

    Quelques informations techniques:

  • La version de Drupal est la 5.8
  • Les modules utilisés (liste non exhaustive) sont : CCK, VIEWS, Biblio, BUEditor, IMCE, Login Destination, OAI2, Pathauto, Sections, SimpleMenu, Thickbox, Token, Tagadelic, XML Sitemap…
  • La visionneuse flash utilise l’API de Scribd (Ipaper), intégrée via un module spécifique. http://www.scribd.com/publisher/integration

Le site s’accompagne d’un blog : http://blog-bibnum.cerimes.fr/ sur lequel vous trouverez des informations concernant l’évolution de BibNum et les articles publiés sur le projet.

Si vous souhaitez des informations complémentaires sur ce projet, n’hésitez pas à m’écrire à cette adresse : quillet[at]cerimes.fr

i18n - internationalisation

Dans le cadre de la traduction d’une partie du site PLUME en anglais que je suis en train de faire, j’ai expérimenté les possibilités du module i18n, (iTERNATIONALISATIOn). Drupal fournit déjà des possibilités de localisation et internationalisation d’un site mais, pour traduire le contenu, (nœuds, menus, taxonomie, views etc.), il faut utiliser un module externe tel que i18n. Ce module marche vraiment bien et permet de réaliser un site multilangues de façon convivial, malgré une certaine complexité.
Pour plus d’informations voir, (désolé, c’est en anglais) : http://drupal.org/node/133977
Pour télécharger le module : http://drupal.org/project/i18n
P.S. Il existe une problème de compatibilité entre i18n et le module pathauto, voir http://blog.merge.nl/2008/05/02/drupal-multi-langu... où vous pouvez trouver une remède, ("patch").

Edit: Le "patch" pathauto a été intégré au module i18n avec la dernière version que j’ai installé, (version = "5.x-2.4").

Guides, tutoriels, vidéos et astuces

Des kits graphiques, des vidéos (“comment mettre à jour un module Drupal”, les modules externes, …), nouvelles fonctionnalités de la version 6 : allez faire un tour sur http://biboo.net/

Conférence Drupal

La dernière conférence Drupal a eu lieu à Szeged (Hongrie) du 27 au 30 août 2008.

http://szeged2008.drupalcon.org/

Autres fiches de CMS dans PLUME