Mon guide des modules indispensables (Partie 1)

Les nouveaux venus sont souvent déroutés devant la multitude de modules disponibles. Cet guide leur est destiné, il donne mon point de vue (j'insiste c'est un point de vue partial) sur les modules qu'il serait dommage de ne pas connaître lorsque l'on se forme à Drupal...

Dans ce premier article nous verrons comment ces premiers 12 modules peuvent :

  • Réduire votre temps de développement
  • Faciliter la Construction de votre site
  • Gérer des images
  • Géolocaliser le contenu

1) Réduire votre temps de développement

Les modules : Admin menu, Devel et Drush
Tous ces modules sont disponibles pour D6. L'extension Theme Developper du module Devel n'est pas disponible pour D5.

Drush est un outil de productivité qui vous permet d'installer et de mettre à jour vos modules en ne tapant qu'une ligne de commande (depuis votre shell). Cela vous évite ainsi de télécharger les archives des modules depuis drupal.org, de les décompresser sur votre serveur et de les activer via l'interface web de votre site. Bref, installez Drush en premier et vous gagnerez un temps fou par la suite...

Admin menu est certes très simple mais c'est peut-être lui qui vous fera gagner le plus de temps. Il ajoute un menu déroulant sur le bord supérieur de votre écran afin d'accéder sans temps de chargement intermédiaire à n'importe quel écran de configuration. Adoption immédiate garantie !

Devel est destiné au développeurs et autres designers, il vous facilitera la vie lors du développement d'un nouveau site. Il peut ainsi générer des contenus factices (utilisateurs, noeuds, commentaires, catégories...), afficher les requêtes exécutées lors de l'affichage d'une page, et bien d'autres choses encore. L'extension Theme Developper est une aide précieuse pour les thémeurs car elle affiche les fonctions de thèmes utilisées pour l'affichage.

2) Faciliter la Construction de votre site

Les modules : CCK, Views, Panels.
CCK et Views sont utilisable sur Drupal 6. Panels Drupal 5.

CCK, Views ont montré la voie, puis Panels. Tous ces modules représentent une nouvelle génération d'outils qui accélèrent le développement de sites complexes en permettant de bâtir une bonne partie de la structure d'un site sans programmation (ou presque).

CCK va vous permettre de créer de nouveaux types de contenu structurés (avec des champs spécifiques) adaptés à chaque problématique, de paramétrer le formulaire de saisie et de spécifier quels champs doivent apparaître lors de l'affichage complet et du résumé. CCK dispose d'un nombre important d'extension qui augmente le type de champs rendu disponibles pour créer vos types de contenus : civilité, date, fichier, image, carte, champs calculés...

Views va vous permettre de créer des vues sur mesure pour vos listes de contenu, de les filtrer selon des conditions complexes, de trier, de spécifier quels champs afficher et comment les afficher. La puissance des extensions de views permet de réaliser toutes sorte de vues : listes, tableau, grilles, cartes google map, slideshow javascript, calendriers, etc.

Panels, lui va vous permettre, sans programmation, d'afficher et de mettre en page sur un panel des contenus, des blocs, des vues et d'autres panels dont le contenu est déterminé dynamiquement. La puissance de ce module réside dans la possibilité d'extraire des relations entre les contenus (auteur, catégorie, hiérarchie) et par exemple, de déterminer l'auteur d'un contenu pour afficher son profil à côté. Enfin il offre des possibilités de mise en page qui accélèrent grandement le développement de grilles de contenu complexes.

Ces modules sont des contributeurs important du succès de Drupal, il sont des accélérateurs de développement et permettent ainsi au développeurs de se concentrer sur les tâches à plus forte valeur ajoutée.

L'avenir : il est question d'intégrer CCK et Views à Drupal 7, cela se fera peut-être, surtout si la sortie de D7 est retardée à 2009.

3) Gérer des images

Les modules : Image ou Imagefield, imagecache et image gallery
Seul image et imagecache sont disponibles pour D6 (béta ou alpha).

Alors que la gestion des image est primordiale Drupal ne propose aucune solution native et le choix du meilleur module s'avère complexe.

Complexe, tout d'abord parce qu'il y deux concepts qui s'affrontent : soit les images sont gérés comme un champ d'un type contenu soit elles sont considérées comme un noeud à part entière.

  • Avec Imagefield, imagecache et toutes leurs extensions vous allez gérer vos images comme un champs spécifique d'un de vos types de contenu. Il s'agit donc d'une extension majeure de CCK. Imagecache permet en plus de manipuler les images afin de les transformer (taille, effets spéciaux...) et imagefield Gallery permet de les afficher.
  • Image et toutes ces extensions vous permettent de gérer vos image comme un contenu à part entière.

Le choix entre les deux concepts va dépendre de l'utilisation que vous souhaitez faire de vos images. Si vous considérez vos images comme des éléments à part entière de votre site, alors choisissez le module image. Par contre si vos images ne sont que des illustrations d'un contenu plus important alors imagefield sera plus adapté.

Simple non ? Et bien en fait pas tout à fait puisqu'il est possible de défendre l'opinion inverse ;-). Bref, pour vous faire votre opinion, testez les deux. Pour ma part je suis plus à l'aise avec Imagefield et cie que j'utilise systématiquement...

Le choix du module se complexifie d'autant plus lorsque l'on envisage un développement sur D6. A très court terme, c'est simple car aujourd'hui, seul Image dispose d'une version D6. A moyen terme il est difficile de faire des pronostiques, le port d'imagefield n'a pas été encore commencé (j'ai entendu parler de cet été voir cet automne). A tel point que le créateur d'un module nommé filefield, qui permet l'upload de fichiers, a proposé d'abandonner imagefield au profit de filefield et de sa nouvelle extension Filefield Image (je n'ai pas encore testé). Ceci dit, l'affaire est loin d'être entendue et pour le moment nous sommes dans le flou et nous ne disposons pas d'un moyen fiable d'ajouter une image via cck pour D6.

Que faire ? Pour ma part, c'est simple, j'ai choisi de rester en D5, pour imagefield et pour d'autres modules (location, panels)...

4) Géolocaliser le contenu

Location : permet d'associer une information géographique à un contenu.
Gmap : permet d'afficher des contenus géolocalisés sur une carte.
Drupal 5 uniquement. Le port sur Drupal 6 prévu mais pas encore commencé (fin 2008?).

L'association de ces deux modules permet de réaliser de véritables applications cartographiques. "Location" intègre un formulaire d'adresse dans vos contenus (noeuds, user) et va convertir, via un web service, cette adresse en latitude et longitude. Gmap va se charger de d'afficher sur une carte Google map l'ensemble des contenus géolocalisés. L'ensemble prend une véritable dimension lorsqu'il est associé au module View qui permet de paramétrer finement ce qui doit être affiché. En dehors de ces fonctionnalité basiques, les deux modules offrent de nombreuses possibilités : choix du service de géocodage, ...

Ces deux modules ont eu un temps de maturation élevé ce qui leur a donné une mauvaise réputation. Heureusement "Location" arrive bientôt (été 2008 si tout va bien) en V3 et Gmap en V1. Cela fait de drupal une plateforme de choix pour bâtir des applications cartographiques. Seul bémol "Location" n'a pas d'extension pour CCK ce qui réduit sa flexibilité...

Alternatives : l'instabilité passée des 2 modules à accéléré le développement de modules supplémentaires mais pas forcément complémentaires. Ceci dit, tous les projets n'ont pas besoin de la puissance de Loc+Gmap, allez donc voir ici.
Enfin sachez que Gmap et Location ont une puissance et une flexibilité qui va être encore renforcée par le développement du projet Mapadelic. L'investissement formation sera donc profitable.

Pour plus d'information sur le développement de ces deux modules allez faire un tour ici (en anglais).

Voila, c'est tout pour aujourd'hui. Dans une seconde partie de ce guide j'aborderai les modules qui permettent de : gérer des fichiers multimédia, améliorer la recherche, créer une communauté et générer plus de traffic.

En attendant, quelle est votre opinion sur les modules présenté dans cette première partie ? Ai-je oublié un module essentiel qui rentre dans l'une des quatre catégories explorées aujourd'hui ?

Comments

ImageField

Salut Alexandre!

J'ai une question: est-il possible de générer , lors d'un envoi d'image via imagefield, la création de plusieurs tailles de la même image. je suppose que oui, mais, ayant créé des profils ImageCache, je ne vois aps comment lier ces profils a mon champs CCK de type Image...

As tu une idée du pourquoi du comment?

Merci!

En fait imagecache peut

En fait imagecache peut générer les images à la volée au moment de leur affichage...

Tu peux donc "lier" ton preset imagecache lors du paramétrage de l'affichage des champs CCK, lors de la construction d'une view ou lors du paramétrage de "Imagefield Gallery Content Types" (un preset pour la preview et 1 pour la vue complete).

C'est ainsi plus flexible puisque tu conserves l'image d'origine et tu peux générer autant d'images que de vues nécessaires (liste, noeud, panel).

Je réponds à ta question ?

Oui mais

Impeccable ta réponse mais la génération à la volée me fait un peu peur...

C'est super Couteux sur un gros site non??

Car le site va faire pas mal de traffic et j'aurais préféré générer les miniatures et les différentes tailels au moment de la création de l'article par exemple!!!

Le module Image pour cela est bien, tu peux générer plusieurs tailles quand tu crées le noeud!

Qu'en penses-tu?

Je me suis mal exprimé,

Je me suis mal exprimé, l'image est générée lors du premier affichage puis stockée après pour être réutilisée. Pas de problème de surcharge donc et cela permet toujours cette flexibilité si tu crée une nouvelle vue après avoir chargé l'image par exemple.

Il y a un très bon manuel ici (en anglais) : http://drupal.org/node/163561.

A+

Génial!

Fantastique!

Merci bcp ;-)

Par curiosité, tu connais drupal depuis quand? Tu t'y es mis tout seul?

Enfin un bon Drupalist Français

Je vous remercie pour l'explication du module cck.
Bon courage...

Accès impossible à l'administration

Bonjour. Je suis nouveau dans Drupal (je suis de la planète Joomla). Je viens d'installer Drupal 6.5 e y intégrant la traduction française. Problème : après l'installation, impossible d'accéder à la partie administration, que faire pour y remédier ? (la version anglaise ne pose aucun problème).
Merci

Bienvenu dans l'univers

Bienvenu dans l'univers Drupal... Je vous conseille de poser votre question (si ce n'est déjà fait) sur le forum de http://drupalfr.org.
Merci de votre compréhension ;-)

Post new comment

The content of this field is kept private and will not be shown publicly.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Lines and paragraphs break automatically.

More information about formatting options