Vous êtes sur la page 1sur 10

Prface

Public vis
Voici le public cibl par cet ouvrage : Si votre dveloppeur en chef voque constamment cette chose trange nomme "Drupal" et que vous souhaitiez savoir ce dont il parle, ce livre est fait pour vous. Si votre directeur vous a dit "Nous devons mettre en place un site web de type X, tout de suite !" et si "X" est une galerie de photos, un site de critique de produits, un site marchand ou tout autre projet couvert par cet ouvrage, ce livre est fait pour vous. Si vous connaissez dj Drupal, mais que lincroyable quantit de modules additionnels vous effraie et que vous ayez besoin daide pour dterminer ceux examiner, ce livre est fait pour vous. Si vous pensez dj matriser Drupal, mais que vous souhaitiez largir votre horizon en examinant certains des modules les plus sotriques et apprendre les meilleures pratiques pour construire des sites web Drupal puissants, ce livre est fait pour vous. Si vous tes totalement novice en matire de cration de sites web et dinstallation de scripts web, ce livre nest probablement pas fait pour vous, tout au moins pas encore. Nous supposons que les acronymes PHP, FTP, URL, ZIP et HTML font partie de votre vocabulaire. Par ailleurs, si vous tes intress par les dtails des fonctions de lAPI de Drupal, ce livre nest pas fait pour vous. Son objectif est dexpliquer comment combiner des modules existants pour mettre en place une fonctionnalit, non de crer de nouveaux modules. Si vous faites partie du plus grand nombre, cest--dire du dbutant complet au professeur dinformatique, nous esprons que cet ouvrage vous servira de rfrence pour la mise en place de sites web avec Drupal.

Prrequis
Vous devez avoir accs un ordinateur ou un serveur sur lequel sont installs PHP, un serveur web (de prfrence Apache) et une base de donnes (MySQL est conseille). Pour un dveloppement local, il existe plusieurs paquetages Apache/MySQL/PHP intgrs, tels WAMP pour Windows (http://www.wampserver.com) et MAMP pour Mac OS (http://www.mamp.info).

COMPOSEZ AVEC LES MODULES DE DRUPAL Vous pouvez consulter la page http://drupal.org/hosting pour obtenir la liste des hbergeurs web qui prennent en charge Drupal, ainsi que la page http://drupal.org/ requirements pour en savoir plus sur les exigences systme de Drupal. Vous devez galement installer Drupal, et les chapitres de mise en pratique supposent que vous rutilisez le code source du livre. LAnnexe A fournit les instructions minimales pour linstallation, mais en cas de problme ou si vous souhaitez obtenir des instructions plus dtailles, consultez le guide dinstallation de Drupal 6 ladresse http:// drupal.org/getting-started/install. Si vous nutilisez pas le code source fourni avec cet ouvrage, vous trouverez lAnnexe C la liste de tous les modules et thmes utiliss chaque chapitre an de pouvoir crer les sites.

propos des modules utiliss


Drupal afche une activit permanente et les modules crs par sa communaut changent constamment. Le code source du livre fournit les versions qui ont servi lcriture des chapitres. Au l du temps, les versions disponibles sur Drupal.org (http://drupal.org) ont de fortes chances dvoluer. Parfois, les modications apportes affecteront peu le fonctionnement des sites, mais ce ne sera pas toujours le cas. Pour bon nombre de chapitres, les sections de mise en pratique resteront dactualit pendant trs longtemps ou changeront si peu quil sera relativement facile de les suivre. Aprs avoir utilis ce livre et examin les diverses congurations, vous devriez tre en mesure dexplorer vousmme les modules, mme en cas de changement de linterface utilisateur. Outre les diffrentes mises en pratique, vous verrez des astuces et les meilleures pratiques sur la manire de travailler, autrement dit sur la manire dapprendre par vous-mme utiliser des modules. Par ailleurs, noubliez pas que les sections "Gros plan", qui prsentent les fonctionnalits dun module et comparent des modules, ainsi que lAnnexe B, qui explique comment valuer des modules, constituent de bonnes bases pour que vous meniez vous-mme ces valuations. Vous pouvez effectuer vos propres comparaisons la sortie de nouvelles versions des modules et faire les meilleurs choix en fonction de vos besoins. Ce livre est non seulement un guide, mais galement un tremplin vers votre propre matrise des projets additionnels de Drupal.

Contenu de ce livre
Aprs les premiers chapitres qui plantent le dcor, ce livre est organis sous forme de "recettes", chacune respectant la structure suivante : Introduction Elle propose une vue densemble des modules examins et prsente lobjectif gnral du chapitre.

PRFACE tude de cas

3
Elle tablit les besoins dun client ctif qui souhaite mettre en place un site web de type wiki, critique de produits ou galerie dimages. Nous fournissons des informations de rfrence sur le client et entrons dans les dtails de ses exigences spciques. Notes de mise en uvre Cette section explique diffrentes solutions Drupal permettant de satisfaire les exigences du client. Elle dtaille les modules retenus, ainsi que les raisons de ce choix. Elle compare les modules et justie lutilisation du module A ou la mise lcart du module B. Gros plan Chaque chapitre introduit un ou plusieurs modules principaux, ainsi que des concepts Drupal. Les sections Gros plan donnent une vue densemble sur la spcialit de chacun et leur fonctionnement. Elles peuvent tre abordes comme une courte "che produit" qui souligne les fonctionnalits et les possibilits dun module donn. Mise en pratique Aprs avoir dcrit les possibilits des modules dans le cas gnral, les sections de mise en pratique montrent comment les congurer en dtaillant chaque tape de construction de la fonctionnalit requise par le client. Pour aller plus loin Moult modules peuvent complter un cas particulier pour le rendre encore plus performant. Cette section fait rfrence des modules complmentaires qui permettent damliorer la fonctionnalit construite dans les sections de mise en pratique. En rsum Cette section rcapitule ce que vous avez appris au cours du chapitre et propose des liens vers les modules utiliss et dautres ressources. Voici une description des chapitres qui composent cet ouvrage. Si vous navez jamais utilis Drupal, la lecture des trois premiers est quasiment obligatoire. Les chapitres suivants supposent que vous possdez une connaissance de base de Drupal, ainsi que des modules Views et CCK. Si vous avez dj employ Drupal 5 mais pas encore Drupal 6, vous pouvez parcourir ces chapitres, en particulier le Chapitre 3 car le module Views a beaucoup volu dans Drupal 6.

COMPOSEZ AVEC LES MODULES DE DRUPAL Chapitre 1, Vue densemble de Drupal Ce chapitre rpond aux principales questions concernant Drupal : quest-ce que Drupal, qui lutilise, pourquoi ce choix, comment fonctionne-t-il ? Il fournit galement un contexte historique, introduit la terminologie de base et prsente tout ce dont vous avez besoin pour passer laction. Chapitre 2, Embarquement pour Drupal Le premier chapitre de mise en pratique prend le problme bras-le-corps et montre comment utiliser les fonctionnalits standard de Drupal, ainsi que quelques modules additionnels, pour construire un site web mtier minimal. Arriv la n de ce chapitre, vous serez accoutum ladministration de Drupal et saurez comment crer du contenu de base laide de linterface WYSIWYG des modules FCKeditor et IMCE. Il examine galement les modules Drupal, notamment Mollom, qui permettent de grer les abus invitables. Chapitre 3, Offres demploi Ce chapitre prsente les modules CCK (Content Construction Kit) et Views en dtaillant la construction dun site web doffres demploi. Vous y apprendrez crer des types de contenus personnaliss, ajouter des champs de formulaire et emboter des listes de contenus web de nimporte quel type, qui constituent la base des autres chapitres de cet ouvrage. Chapitre 4, Critique de produits Au l de ce chapitre, vous construirez un site web communautaire pour la critique de produits. Le module Amazon fournira les donnes sur les produits, tandis que les modules Voting API et Fivestar serviront lvaluation. Chapitre 5, Wiki Ce chapitre introduit plusieurs outils qui peuvent tre utiliss pour crer, notamment, un wiki dans Drupal. Le systme de rvision des nuds, associ au module Diff, le ltre Markdown, pour faciliter la saisie dun contenu HTML, le module Freelinking, pour crer et lier automatiquement des pages du wiki, et le module Pathauto, pour crer automatiquement des URL compatibles avec les moteurs de recherche, y sont tous dtaills. Chapitre 6, Gestion du ux de publication Ce chapitre sintresse la mise en uvre des ux de publication personnaliss avec le systme Actions de Drupal combin avec le module Workow, ainsi quaux modules Views Bulk Operations et Workspace pour la cration de pages dadministration personnalises.

PRFACE Chapitre 7, Galerie de photos

5
Ce chapitre montre comment composer un album de photos de famille laide du module ImageField, et du module ImageCache pour gnrer automatiquement des vignettes redimensionnes. Chapitre 8, Sites multilingues Ce chapitre dcrit la construction dun site multilingue avec les modules Locale, Content Translation et Internationalization. Chapitre 9, Gestion dvnements Ce chapitre se focalise sur la gestion des vnements dans Drupal, par lexploitation des modules Date et Calendar, pour lenregistrement et lafchage des informations concernant les vnements, et du module Flag, pour le suivi des participants. Chapitre 10, Magasin en ligne Ce chapitre se fonde sur les modules de la suite Ubercart pour mettre en uvre un magasin de vente de tee-shirts qui propose un catalogue de produits, un chariot dachat et le paiement. Chapitre 11, Thmes Ce chapitre prsente le systme de gestion des thmes de Drupal et donne quelques mthodes de base pour remplacer la prsentation de Drupal. En lisant ce chapitre, vous pouvez commencer modier les chiers de modle et donner Drupal laspect que vous souhaitez. Annexe A, Installation et mise niveau de Drupal Si vous dbutez avec Drupal, cette annexe vous permettra de savoir comment linstaller rapidement et comment procder aux mises jour. Annexe B, Choix des modules La slection des modules constitue souvent le principal obstacle la construction dun site Drupal. Cette annexe propose des stratgies et des astuces qui permettent de dterminer les modules adapts votre site. Annexe C, Modules et thmes utiliss Cette annexe recense les modules et les thmes employs dans chaque chapitre an de recrer les sections de mise en pratique.

COMPOSEZ AVEC LES MODULES DE DRUPAL

Conventions
Les conventions typographiques sont les suivantes : Gras et gris Reprsente les URL. Italique Indique des termes nouveaux, des noms de chiers, des rpertoires et du texte mis en exergue. Chasse fixe Cette police est utilise pour les parties de code, le contenu des chiers, les commandes et le rsultat des commandes.
Ces notes proposent des conseils, des suggestions ou des informations complmentaires.

Ces notes indiquent un avertissement ou une invitation la prudence.

La navigation dans les pages de Drupal est prsente sous la forme suivante : Administrer > Construction du site > Modules (admin/build/modules) Cet exemple indique de cliquer sur le lien Administrer dans le volet de navigation, puis sur Construction du site, et enn sur Modules. Vous pouvez galement saisir dans votre navigateur le chemin indiqu entre les parenthses : http://www.example.com/ admin/build/modules.

Exemples de code
Ce livre a comme objectif de vous aider. En gnral, vous pourrez utiliser les exemples de code sans restriction dans vos programmes et la documentation. Tout le code Drupal, y compris le code Drupal 6 auquel vous accdez par lintermdiaire du site web Pearson (www.pearson.fr) est soumis la licence GPL version 2 de GNU. Votre utilisation du code Drupal, y compris la copie, la modication et la distribution, est assujettie la licence. "Drupal" est une marque dpose par le fondateur du projet Drupal, Dries Buytaert. Les informations concernant les utilisations autorises du code et de la marque dpose sont disponibles sur le site web de Drupal (http://drupal.org). Vous y trouverez galement les informations concernant limpact de la licence GNU GPL sur lutilisation du code. Pour de plus amples informations concernant la licence, consultez la page http://www.gnu.org/licenses/old-licenses/gpl2.0.html#SEC3.

PRFACE

7
Pour les autres exemples de code de cet ouvrage, vous navez besoin de demander une autorisation lditeur que si vous souhaitez reproduire des portions signicatives du code non Drupal. Par exemple, la conception dun programme reprenant plusieurs extraits de code de cet ouvrage ne requiert aucune autorisation. Par contre, la vente et la distribution dun CD-ROM dexemples provenant de louvrage en ncessitent une. Rpondre une question en citant le livre et les exemples de code ne requiert pas de permission. Par contre, intgrer une quantit signicative dexemples de code extraits de ce livre dans la documentation de vos produits en ncessite une. Nous apprcions, sans limposer, lattribution de lorigine de ce code. Une attribution comprend gnralement le titre, lauteur, lditeur et le numro ISBN. Par exemple, "Composez avec les modules de Drupal dAngela Byron, Addison Berry, Nathan Haug, Jeff Eaton, James Walker et Jeff Robbins, Pearson Education France, 2009, 978-2-7440-2364-4". Si vous pensez que lutilisation que vous avez faite de ce code sort des limites dune utilisation raisonnable ou du cadre de lautorisation prcdente, nhsitez pas nous contacter ou contacter lditeur dorigine ladresse permissions@oreilly.com.

Tlcharger Drupal 6
Le site web (en anglais) consacr ce livre (http://usingdrupal.com/source_code) fournit un lien de tlchargement de Drupal 6, des modules examins dans cet ouvrage, ainsi que des thmes utiliss dans les exemples de sites web des chapitres de mise en pratique. Pour chacun de ces chapitres, il existe galement un prol dinstallation (un ensemble de scripts initiaux pour la conguration par dfaut des options) qui met en place un site de dpart. Ces prols dinstallation peuvent tre slectionns au dbut de la procdure dinstallation de Drupal. Vous trouverez par ailleurs sur le site de Pearson (http://www.pearson.fr), le code des exemples localiss. Pour passer des exemples pratiques dun chapitre ceux dun autre chapitre, vous devez crer un nouveau site tout en utilisant le mme code source. Voici la procdure suivre : 1. Crez une nouvelle base de donnes pour linstallation de Drupal qui correspond au chapitre, ou supprimez la base de donnes existante et recrez-la. 2. Copiez le chier sites/default/default.settings.php sous le nom sites/default/settings.php, en crasant le chier settings.php existant. 3. Ajustez les autorisations sur le chier sites/default/settings.php an quil soit modiable. 4. Excutez nouveau linstallation en allant ladresse http://www.example.com/install.php.

COMPOSEZ AVEC LES MODULES DE DRUPAL Pour de plus amples informations concernant linstallation de Drupal, consultez lAnnexe A. Outre la conguration de certains paramtres de base, comme le nom du site, le thme et autre pour chaque chapitre, les prols dinstallation, lexception de celui du Chapitre 2, dnissent galement les utilisateurs suivants : Nom dutilisateur : admin, mot de passe : campus Le premier utilisateur, qui possde le rle "administrateur du site" et peut tout faire sur le site. Nom dutilisateur : rdacteur, mot de passe : campus Un utilisateur qui possde le rle "rdacteur". Il est utilis dans les chapitres qui requirent des utilisateurs avec des autorisations leves. Nom dutilisateur : utilisateur, mot de passe : campus Un utilisateur normal qui possde uniquement le rle "utilisateur identi". Il sagit des utilisateurs auxquels les chapitres font rfrence lorsquils demandent douvrir une session avec, par exemple, lutilisateur "rdacteur". Sauf mention contraire, les oprations doivent tre excutes avec le compte de lutilisateur "admin".

Remerciements
Team Lullabot souhaite remercier les relecteurs techniques de ldition originale de ce livre, notamment Robert Douglass, Ajay Gallewale, Jeffrey MacGuire, David Moore et Matt Westgate. Merci Tatiana Apandi et Julie Steele des ditions OReilly qui nous ont guids tout au long de cette premire aventure dans lcriture collective dun ouvrage. Merci galement Liza Kindred, Haley Scarpino et Tim McDorman pour nous avoir aids jongler avec le calendrier an de terminer ce livre. Jeff Eaton doit tre remerci pour avoir fourni les photographies utilises dans le chapitre de la galerie dimages. De mme, merci Kent Bye de Lullabot pour avoir appliqu son sens de la visualisation au module Views, et John VanDyk pour ses commentaires extrmement utiles sur certains des chapitres les plus importants de cet ouvrage. Mes remerciements particuliers vont Ivan Zugec, qui nous a gracieusement transmis la proprit du domaine http://usingdrupal.com. Et, bien sr, merci Dries Buytaert pour avoir invent Drupal et lavoir laiss en open-source. Sans lui, rien ne serait arriv. Angela Byron veut tout dabord remercier publiquement sa compagne, Marci McKay, qui a fait preuve dune patience et dune comprhension formidables pour toutes ces longues soires passes lcriture de ce livre et qui, de manire gnrale, est extrmement tolrante, voire dun grand soutien, quant lobsession dAngie pour Drupal. Un grand merci galement ma famille, en particulier mes parents Jeanne et Mike et mon frre et ma sur Keith et Sara, pour leur soutien tout au long de ce travail. John Wait et Debra Williams-Cauley mritent galement dtre remercis pour leur aide qui ma

PRFACE

9
permis de raliser mon rve dcrire un livre. Michelle Cox et Matthew Harrison ont travaill sur la validation des premiers plans. Moshe Weitzman, Brandon Bergren et Dries Buytaert ont effectu la relecture technique des premires versions des chapitres, et Dries a apport ses remarques et son soutien. Addison Berry souhaite remercier son compagnon, Colleen McGraw, pour avoir support avec patience les week-ends perdus et les tches mnagres ngliges, pour lavoir rconforte lors des moments de fatigue et pour avoir t une source de motivation lors des alas de la vie. Richard Burford, Alex Dergachev, Joel Farris, Jay McDonald, Don Palmer, Jose Reyero et Brian Vuyk ont gentiment fourni leurs commentaires sur mes chapitres, et Wim Leers a propos une traduction en hollandais. Toute la communaut Drupal a fait preuve dun soutien tonnant lors de ce priple. Rien ne serait arriv si ses membres navaient pas t prsents. Enn, merci mes parents, Joan et Merlin Berry, pour leur soutien dans toutes les choses folles que je peux faire, sans jamais avoir dout de moi. Nathan Haug remercie ses parents extraordinaires, James et Aleda Haug, ainsi que son grand-pre, Tom Arnberg, source de son inspiration. Merci galement aux relecteurs techniques, David Moore et John VanDyk. Un grand merci tous les auteurs de la plateforme Drupal et des modules complmentaires. Earl Miles doit tre remerci pour Views, et Jonathan Chaffer, Karen Stevenson et Yves Chedemois pour CCK. La plateforme Drupal naurait jamais t ce quelle est sans la coopration formidable dautant dindividus. Jeff Eaton voudrait remercier sa femme, Catherine, pour sa patience et ses encouragements. Le test et le dpannage dun module ne devraient pas apparatre au cours des dners romantiques, mais la bonne humeur de Catherine face cette intrusion de la technologie a t cruciale pour laboutissement de ce projet. Doug Green, Earl Miles et tous les autres membres de la communaut Drupal ont ralis un excellent travail de critique et de dpistage des complexits qui auraient pu facilement perturber les nouveaux utilisateurs. Jason Scott et Jeff Benson ont maintes fois compati des heures indues, tandis que mes parents, Doug et Cindi, ont pass une partie de ces deux dcennies encourager cette aventure passionne. James Walker souhaite remercier ses deux enfants, Andrew et Camryn, pour leur amour, leur patience et leurs balades au parc. Karen Stevenson, Ryan Szrama, Earl Miles et Nate Haug ont apport le code sous-jacent mes chapitres, ont pertinemment rpondu mes questions et ont propos leurs ides. Merci ma mre, Linda, qui a toujours cru en moi et a t un hte formidable pour les retraites de Lullabot. Jeff Robbins remercie sa femme, Jennifer Niederst Robbins, pour son amour, son soutien et ses prouesses de rvision, ainsi que son ls, Arlo, pour lui rappeler de ne pas ngliger laspect plaisir. Merci OReilly Media, qui reprsente une extension de ma famille depuis le dbut des annes 1990, lorsque Jennifer et moi nous y travaillions et

10

COMPOSEZ AVEC LES MODULES DE DRUPAL o nous nous sommes rencontrs. Je remercie galement Matt Westgate dtre le meilleur collgue imaginable et dapporter cette atmosphre stable, sereine et heureuse au sein de laquelle Lullabot, lentreprise, et Lullabot, les individus, ont prospr. Je transmets mes remerciements et ma gratitude Liza Kindred pour maintenir lactivit de lentreprise, aux autres membres de lquipe pour ltonnement quils me procurent en permanence et lensemble de la communaut Drupal pour tout le code gnreux et incroyable que nous appelons Drupal.