Tuto Joomla

Embed Size (px)

Citation preview

FORMATION JOOMLA! 1.5 ________ CCI Landes Novembre 2008 -

PrambuleVous avez comme projet de publier du contenu sur Internet dans le but de faire connatre ou reconnatre votre activit, vos services, vos produits. Vous avez besoin de stimuler dans le cyber-espace des partenaires, des clients, toute une communaut. Vous souhaitez faire profiter de votre savoir-faire, de vos conseils et de vos analyses en dveloppant votre notorit auprs d'un auditoire identifi. Pour toutes ces raisons et d'autres encore, comme celle d'accroitre vos bnfices, Internet semble devenir l'une des cls. Exister sur la toile, bien souvent c'est exister tout court.

Des professionnels vous guident pour la mise en place de votre prsence sur Internet, mais il est souvent difficile de leur confier toutes les reines. Si l'on considre votre site internet comme le prolongement naturel de la branche communication de votre activit, alors il vaut mieux en connatre les rudiments et l'intgrer compltement aux processus en cours. Vous avez donc choisi, juste titre, d'apprendre par vous-mmes et certainement avez-vous dj commenc vous documenter ; vous avez ainsi surement appris que les technologies du Web sont complexes et en perptuels volutions. Aussi, inutile de vouloir tout connatre des emoteurs, certains outils comme JOOMLA! 1.5 sont fait pour vous faciliter les choses. En vous concentrant sur la bonne route suivre, des objectifs concrets atteindre et la valeur des messages transporter, vous allez pouvoir aborder cette nouvelle aventure avec mthode et clairvoyance... de grandes chances de succs. Bonne e-route...

La Cl USBLa CCI des Landes, l'occasion de cette formation JOOMLA!, vous a remis une cl USB un peu particulire : La Framakey.

La FramaKey

Logo des Logiciels Libres (Open Source)

La Framakey est une compilation de Logiciels Libres pour Windows, prts lemploi sur clef USB qui facilite la vie des utilisateurs nomades. Son objectif est de vous proposer les meilleurs des Logiciels Libres sous systme Windows, prinstalls et prts tre utiliss directement depuis votre clef USB. Par consquent, vous navez rien installer, et lutilisation des logiciels se fait de faon scurise et sans laisser dinformations personnelles sur les machines sur lesquelles vous utilisez votre Framakey.

La slection des meilleurs logiciels portables par FramaKey :

De gauche droite : Mozilla Firefox, navigateur Internet Mozilla Thunderbird, messagerie Open Office, suite bureautique Sumatra PDF, lecteur de documents au format PDF VLC, lecteur multimedia The GIMP, retouche et cration d'images Wengo, tlphonie et visioconference

Un serveur Web pour vousLa CCI des Landes a souhait vous ddier un serveur Web en libre accs. Pour vous entrainer et parfaire votre connaissance pendant et aprs le temps de la formation, sans vous soucier de la technique, voici votre bac sable : http://prenom-nom.cci-landes.com (adresse valider avec formateur) A noter que l'accs vous est rserv. Libre vous de communiquer vos identifiants et mots de passe vos collaborateurs et associs. Tout abus constat entrainera la suppression du compte en question.

Pour vous accompagner dans cette formation, nous avons imprim deux supports de cours, que vous pourrez retrouver sur Internet. Le premier est une fiche de synthse sur le logiciel Joomla! Elle permet d'aborder son historique et de nombreux dtails techniques, ses fonctionnalits, ses pr-requis... Elle a t ralis par un groupe d'informaticiens soucieux de livrer une analyse complte et jour (21 octobre 2008). Vous pourrez le retrouver cette adresse : http://www.projet-plume.org/fiche/joomla Le second s'apparente beaucoup plus un guide de l'utilisateur, extrait lui aussi d'internet. De l'installation de joomla! sur un serveur local la cration d'un site complet et ouvert tous, ce guide offre de prcieux points de repres pour dbuter. Certains chapitres n'ont pas t reproduit ici, c'est pourquoi nous vous invitons consulter le site de l'auteur pour aller plus loin. http://joomla.cocoate.com/fr/joomla-15-fr En fin de document, vous trouverez une bibliographie. Tous les livres rfrencs l sont disponibles sur le site Amazon de vente en ligne. http://www.amazon.fr/Joomla-1-5-Hagen-Graf/dp/2744022519/

Joomla! : gestion de contenu Web (CMS)

Site web : http://www.joomla.fr/ (site franais : portail, aide, extensions, forum), http://www.joomla.org/ (site officiel US) Systme : UNIX-like, Windows, MacOS X Tlchargement : http://aide.joomla.fr/telechargements/index.php Version value : 1.5.x (1.5.7) et 1.0.x (1.0.15) Langue(s) de l'interface : franais, anglais, autres Licence : GPL OpenSource - GNU General Public License

Fiche PLUME

Cration ou MAJ importante : 21/10/2008 Correction mineure : 21/10/2008 Patrick Kocelniak - ENSIMAG (Grenoble INP) Patrick Kocelniak qui accepte de faire un support lger l'installation Christian Helft (LAL) Systme : UNIX-like, Windows, MacOS X Mtier-activit : documentation-IST, travail coopratif Domaine informatique : internet Usage : service informatique Fonctionnalits principales : base de donnes, communication, diffusion information, diteur de code, gestion de contenu, partage de fichiers, service web, travail coopratif Mots-cls divers : CMS, HTML, publication Origine : dveloppement externe Type de licence : libre Cot : gratuit

Auteur :

Contact pour cette fiche :

Responsable thmatique :

Mots cls

Description Fonctionnalits gnrales :

Joomla! est un systme de gestion de contenu (en anglais, CMS, pour Content Management System). Ce logiciel web permet de crer un site internet dynamique. Les informations sont rdiges dans des articles. Les articles sont classs dans des sections elles mmes subdivises en catgories. Joomla! fonctionne avec une interface administration (backoffice) et une interface utilisateur (frontoffice). Le backoffice permet de crer la structure du site web (sections, catgories, articles, items de menus, gestion des utilisateurs). La modification des articles existants peut se faire en mode Wysiwyg dans le frontoffice, ce qui permet une dlgation facile des rdacteurs. Lditeur des articles propose un mode Wysiwyg pour tout utilisateur mais aussi un mode texte HTML pour des utilisateurs avancs. Joomla! dispose dun systme de modles (templates) qui permet de modifier trs facilement laspect graphique du site cr. Joomla dispose dun systme dextensions qui permet denrichir les fonctionnalits selon les besoins. Ces extensions font de Joomla! un CMS trs modulaire. Le site officiel joomla recense 3850 extensions (octobre 2008). Fonctionnalits principales :

Articles ditables et grables sans limitations via un diteur WYSIWYG. Insertion de liens automatiques sur des fichiers tlchargs. Gestion fine de la publication des informations (dates de dbut et fin de publication). Facilits pour copier et dplacer le contenu entre diffrentes catgories. Soumission darticles par les contributeurs depuis linterface publique (frontoffice). Gestion des menus et paramtrage individualiss des liens de menus. Templates et design compltement personnalisables incluant laffichage des blocs (au centre, droite, gauche, en haut, en bas). Librairie dimages et de fichiers multimdia (PNG, PDF, DOC, XLS, GIF, JPEG, FLASH, AVI, etc). Gestionnaire dactualits, sondages, bannires, votes. Multilingue (franais compris).

Il y a 2 versions de Joomla! :

Une version 1.5.x (1.5.7 au 21/10/2008) : il sagit de la version actuelle de Joomla!, stable depuis janvier 2008. Une version 1.0.x (1.0.15 au 21/10/2008) : il sagit de la version prcdente de Joomla!, stable depuis 2005. Cette version est maintenue jusquau 22 juillet 2009 en raison du grand nombre dinstallations existantes. Attention : Cela signifie quil ny aura plus de mises jour de scurit pour cette version 1.0.x aprs le 22/07/2009.

Amliorations principales de Joomla! 1.5.x par rapport Joomla! 1.0.x :

Interface dadministration (backoffice) compltement revue et simplifie Gestionnaire dextensions compltement revu et simplifi Edition de templates multi-CSS Support complet Atom 1.0 and RSS 2.0 Amlioration des options daccessibilit Internationalisation amliore, support complet UTF-8, support RTL, traduction utilisant des fichiers .INI Support LDAP natif Support XML-RPC Possibilit dimplmenter des applications Ajax

Quelle version de Joomla! choisir : 1.0.x ou 1.5.x ? Pour faire court : 1.5.x. Pour tre plus prcis :

Joomla! 1.0.x et ses 2700 extensions existent depuis 2005 mais le 13/10/2008, lquipe de Joomla! a annonc la date de la fin du support de Joomla! 1.0.x : le 22/07/2009. Cette annonce laisse entendre que les mises jour de scurit pour Joomla! 1.0.x sarrteront le 22/07/2009. Joomla! 1.5.x est en version stable depuis janvier 2008. Il dispose dune interface administrateur simplifie (en particulier pour grer les extensions) et de nouvelles fonctionnalits stables (mode LDAP, internationalisation, etc). Joomla! 1.5.x et les extensions spcifiques cette version ont eu un temps de dveloppement trs long. Lannonce de la fin du support de Joomla! 1.0.x devrait favoriser et acclrer les dveloppements ou migrations dextensions pour Joomla! 1.5.x. Quid du mode legacy de Joomla! 1.5.x (activable via la partie Administrator : Menu Extensions -> Gestionnaire des plugins -> publier le plugin nomm SystemLegacy) ? Il permet en thorie de faire fonctionner sur la version 1.5.x les extensions dveloppes pour la version 1.0.x. En pratique, mme avec ce mode legacy, beaucoup dextensions dveloppes pour la version 1.0.x ne fonctionnent toujours pas correctement avec la version 1.5.x. De plus, ce mode legacy ne fonctionnera plus pour les extensions Joomla! 1.0.x au sein de la future version Joomla! 1.6. Il ne faut donc pas compter sur lui pour utiliser de faon durable des anciennes extensions Joomla! 1.0.x.

Joomla! 1.5.x et 1.0.x au cas par cas :

Vous crez votre premier site Joomla! : 1. Choisissez Joomla! 1.5.x 2. Choisissez des extensions dveloppes nativement pour Joomla! 1.5.x. Evitez les extensions Joomla! 1.0.x. 3. Choisissez un template graphique compatible Joomla! 1.5.x Vous avez dj un site Joomla! existant en 1.0.x et vous souhaitez mettre en oeuvre tout de suite la migration en Joomla! 1.5.x : 1. Aprs avoir fait toutes vos sauvegardes, effectuez la migration de 1.0.x 1.0.15. 2. Puis effectuez la migration de 1.0.15 1.5.x. (par cration dun nouveau site et utilisation de la solution Migrator dcrite ci-dessous) 3. Vous vrifiez que toutes vos extensions et votre template fonctionnent. 4. Si certaines extensions ne fonctionnent pas : essayez de trouver une version native de ces extensions pour Joomla! 1.5.x ou sinon remplacez-les par des extensionremplacez-le par un template compatible Joomla! 1.5.x. Vous avez dj un site Joomla! existant en 1.0.x et vous navez pas le temps dtudier tout de suite une migration en Joomla! 1.5.x : 1. Aprs avoir fait toutes vos sauvegardes, effectuez la migration de 1.0.x 1.0.15. Cest une migration gnralement sans risques qui prendra en compte les dernires mises jour de scurit. 2. Jusquau 22/07/2009 : appliquez les mises jour de scurit proposes concernant Joomla! 1.0.x. 3. Faites un voeu pour que la fin du support de Joomla! 1.0.x soit repousse une date postrieure au 22/07/2009. Si ce nest pas le cas : tudiez et planifiez la migration vers Joomla! 1.5.x avant le 22/07/2009.

Migration de Joomla! 1.0.x 1.5.x :

Il y a une procdure appele Migrator dcrite dans les logiciels connexes. Cette procdure est en version stable depuis avril 2008. Elle est surtout sans risques car elle ne dtruit pas le site 1.0.x existant. Elle permet une migration des donnes (toute la structure du site avec ses sections, catgories, articles et menus). Mais elle ne gre pas le problme des extensions qui nauraient pas volu vers Joomla! 1.5.x. Elle se prsente sous la forme dun composant (migrator v 1.1 au 07/08/2008) installer sur la version 1.0.x de votre site Joomla! et de lactivation du mode migration dans linstallation de votre nouveau site Joomla! 1.5.x.

Autres fonctionnalits:

Installation par script PHP avec interface graphique : trs facile. Interface LDAP : intgre dans la version 1.5.x, disponible et oprationnelle sous forme dextension/hack dans la version 1.0.x. Moteur de recherche intgr. Changement de lordre daffichage des articles et autres objets. Affichage de flashs infos alatoires. Gestionnaire de flux RSS, syndication paramtrable sur toutes les pages. Envoi darticle par mail. Article en format imprimable. Cration de pdf la vole. Installation simple et rapide des templates et des extensions. Gestion des archives, stockage des anciens articles. URLs SEF (Search Engine Friendly) permettant une meilleure indexation par les moteurs de recherche. dition des balises META (titres et mots clefs) pour chaque article. Normes daccessibilit. Cache paramtrable et compression des pages pour augmenter les performances. Possibilit de mettre le site hors ligne pour une maintenance tout en restant accessible par ladministrateur. Extensions multisites et multilingues possibles. Statistiques : par moteur de recherche, systme dexploitation client, recherches effectues. Les statistiques des recherches effectues sont trs utiles par exemple pour : Identifier des informations cherches mais non trouves sur le site. Identifier les types de systmes dexploitations et de navigateurs web utiliss pour accder au site. Les articles sont stocks dans une base de donnes mysql sous forme HTML. Utilisations : en versions 1.5.7 et 1.0.15, serveur Apache 2.x, PHP5, MySQL 5 Intranet pdagogique et administratif Grenoble INP - ENSIMAG. 1000 utilisateurs. 80 utilisateurs/rdacteurs potentiels. 10 rdacteurs effectifs actuellement. 2 webmasters. 160 000 visites. Les articles initiaux ont t imports de lancien intranet HTML statique par des copier/coller du code HTML dans lditeur wysiwyg JCE. Version utilise : 1.5.7 (initialement : 1.0.15) Extranet Tice Grenoble INP - ENSEEG/PHELMA (http://atelweb.enseeg.inpg.free.fr ) : portail dun atelier de 100 sites web (dont 30 de type Joomla!). 70 000 visites. Versions utilises : 1.5.7 et 1.0.15. Comme tout CMS, la difficult est principalement de comprendre la structuration des informations et de sapproprier son vocabulaire (sections, catgories, articles, menus). Les extensions sont choisir avec soin. Ne pas en abuser. Privilgier celles qui sont compltement indpendantes du noyau Joomla!. Eviter celles qui modifient des parties du noyau Joomla!. Si elles sont vraiment ncessaires : utiliser en connaissance de cause car des mises jour du CMS ncessiteront presque toujours une rinstallation ou un redveloppement de ces extensions.

Interoprabilit:

Contexte d'utilisation:

Limitations, difficults, fonctionnalits importantes non couvertes:

Gestion des droits utilisateurs : Joomla ne dispose par dfaut que de 2 groupes utilisateurs (public et membre). Cette limitation peut tre leve par des extensions GMAccess (solution gratuite pour Joomla! 1.0.x) ou juga (solution commerciale pour Joomla! 1.5.x, tarif : 50$). Comme toute solution PHP/MySQL, il est ncessaire dtre attentif la scurit et de suivre les mises jour de scurit de Joomla!. Le succs de joomla en fait une cible intressante pour les hackers bien que Websecure Group garantisse la scurit du CMS par un certificat dcern lors du festival russe : Chaos Construction (Aot 2006). Pas dimport et dexport faciles possibles depuis ou vers dautres CMS. Une migration ventuelle depuis ou vers un autre systme CMS que Joomla! passera souvent par des copier/coller des articles HTML qui sont fastidieux mais facilits par un diteur darticles Wysiwyg/HTML.

Environnement du logiciel Distributions dans lesquelles ce logiciel est intgr:

Distribution sur cl USB pour environnement Windows (Movamp + Joomla pr-install en versions 1.0.x et 1.5.x) : http://joomlacode.org/gf/project/draft_server/ Attention : les diffrentes solutions ayant Joomla! pr-install ne mettent souvent pas disposition les toutes dernires versions de Joomla!. Pensez appliquer les dernires mises jour de scurit. Prrequis : un serveur Web (Linux, Windows, autres) avec PHP et MySQL. Joomla! fonctionne avec PHP4, PHP5, MySQL 4 et MySQL 5. Joomla! fonctionne trs bien sur un serveur Web install sur le poste local. Quelques solutions de ce type : Xampp : http://www.apachefriends.org/fr/xampp.html (Windows, Linux, Mac OS, Solaris) Voir la fiche PLUME http://www.projet-plume.org/ressource/xamppserveu... EasyPHP : http://www.easyphp.org/ (Windows) Solution Windows movamp : http://www.movamp.net/ (serveur web install sur une cl USB) LAMP : http://lamphowto.com/ (Linux) Lditeur darticles est un aspect trs important dans Joomla!, peut tre le plus important. Cest en effet son niveau de convivialit qui facilite le travail quotidien des rdacteurs. Joomla! fournit un diteur darticles intgr en mode WYSIWYG. Il est possible dinstaller sous forme dextension un diteur encore plus convivial pour lutilisateur. Les deux meilleures solutions sont :

Plates-formes :

Logiciels connexes:

Joomla JCE : gratuit avec une contribution de 20 $/an pour des plugins supplmentaires (gestion dimages, flash, vidos, autres fichiers tlchargs par fentre popup). Ce petit investissement apporte un vrai confort supplmentaire pour ldition. Une petite prfrence pour cet diteur qui permet une personnalisation pousse (des types de fichiers autoriss tlcharger entre autres). Site officiel : http://www.joomlacontenteditor.net/. Site franais : http://jce.sarki.ch/. Joomla FCK : gratuit (mais un mode de donation de lordre de 20$/an semble tre en cours de mise en place galement) avec aussi une gestion dimages, flash, vidos, autres fichiers tlchargs par fentre popup. Site officiel : http://www.joomlafckeditor.com/.

Authentification CAS

Vous trouverez les dtails sur : http://joomlacode.org/gf/project/auth_manager/

A noter que ces dveloppements sont produits par le dpartement informatique de luniversit de La Rochelle : http://informatique.univ-lr.fr/

Migration dun site Joomla! 1.0.x vers 1.5.x par le composant migrator, version stable 1.1 :

La migration nest pas garantie 100% mais le principe de la migration est sans risques car il ne dtruit rien dans le site initial mais effectue la migration relle dans une nouvelle installation de Joomla! 1.5.x. Principe : 1. Installation du composant migrator en tant quextension du site Joomla! 1.0.x existant. 2. Ce composant permet principalement un export de la base de donnes dans un fichier. 3. Nouvelle installation Joomla! 1.5.x effectuer sparment dans un rpertoire diffrent de linstallation 1.0.x. 4. Lors de cette nouvelle installation, choisir une option Script de migration avec le tlchargement. 5. La base de donnes est alors correctement migre. 6. Il reste recopier les fichiers spcifiques du site initial 1.0.x vers le nouveau site 1.5.x : images, fichiers de donnes (flash, ppt, doc, vdos, autres), template. Principalement, cela concerne les rpertoires : images et templates 7. Ce que ne couvre pas cette solution migrator : la migration des extensions du site Joomla! 1.0.x. 8. Si le template de lancien site nest pas compatible Joomla! 1.5.x, il faut galement ladapter ou le remplacer. Maturit du composant Migrator : bonne. Site de tlchargement : http://joomlacode.org/gf/project/pasamioprojects/f... Tutoriel pas pas de migration : http://www.siteground.com/tutorials/joomla15/jooml... (version US)

Extensions :

Toutes les extensions joomla! classes par thmes (anglais) : http://extensions.joomla.org/ Site dextensions (franais) : http://www.joomlafrance.org/ Extension site multilingues, joomfish : http://www.joomfish.net/ Extensions multisites : http://extensions.joomla.org/index.php?option=com_... (solutions gratuites et commerciales) Extensions gestion de groupes utilisateurs : http://www.joomlafrance.org/telecharger/ fileinfo/G... (solution gratuite pour Joomla! 1.0.x), http://www.dioscouri.com/juga/ (solution commerciale pour Joomla! 1.5.x) Extension gestionnaire de tlchargements (remository) : http://remository.com/downloads/joomla-software/ Extension calendrier jevents : http://www.jevents.net/ Extension LDAP pour Joomla 1.0.x, LDAP Hack : http://www.joomlafrance.org/telecharger/fileinfo/l... Un pack joomla spcial ducation : http://www.joomlation.net/index.php? option=com_con... (version joomla personnalise pour la gestion dun tablissement scolaire). Ce pack nest malheureusement plus maintenu. Mais il reste une excellente initiative et slection de composants additionnels (eux mmes personnaliss). Cest une trs bonne rfrence au niveau des ides pour tout administrateur qui souhaite ajouter des extensions Joomla!. Ce pack est bas sur Joomla! 1.0.12.

Modles graphiques (templates) gratuits :

http://www.joomlaos.de/ http://www.joomla24.com/ Pour rechercher dautres sites, utilisez les mots cls : free joomla template dans un moteur de recherche internet

Prestations commerciales autour de la solution Joomla! :

Si vous avez besoin de dveloppements (ou extensions) spcifiques autour dune solution Joomla!, il existe de nombreux prestataires privs, SARL, EURL ou freelances quon peut trouver par exemple par une recherche sur internet.

Autres logiciels aux fonctionnalits quivalentes:

Drupal : http://drupalfr.org/ voir la fiche PLUME http://www.projet-plume.org/fiche/drupal E107 : http://e107.org/ CMS Made Simple : http://www.cmsmadesimple.fr/ SPIP : http://www.spip.net/ voir la fiche PLUME http://www.projet-plume.org/fiche/spip eGroupware : http://www.egroupware.org/Home?lang=fr

Environnement de dveloppement Type de structure associe au dveloppement:

Le dveloppement de Joomla! est en mode open source GPL depuis 2005. Lquipe de Joomla! est issue de celle qui avait dvelopp le CMS Mambo (gratuit mais dveloppement mixte sous couvert dune socit prive MIRO). Exprience consquente de lquipe de dveloppement de ce type de CMS (> 5 ans). Historiquement, Joomla! a t dvelopp sur les ides initiales mises en oeuvre dans le logiciel CMS Mambo (2003). Le passage de Mambo Joomla! sest fait en douceur malgr la scission Mambo/Joomla (compatibilit ascendante pour assurer la transition). La transition entre les versions majeures 1.0.x et 1.5.x de Joomla! se fait galement en douceur. Etant donn le grand succs historique de ce CMS, la version 1.0.x est toujours maintenue depuis janvier 2008 malgr la sortie de la version 1.5.x et elle restera maintenue jusquau 22/07/2009. La version 1.5.x a eu un temps de dveloppement long mais est trs russie (simplicit dutilisation accrue pour lutilisateur et ladministrateur, mode dextensions simplifi, LDAP intgr, internationalisation meilleure, normes daccessibilit PDA/ tlphone/ordinateur) Argument le plus important : lquipe de dveloppement ragit trs vite chaque faille de scurit dcouverte. Les patchs (mises jour de scurit) sont mis disposition trs rapidement. Une forte communaut dutilisateurs la fois internationale et franaise. Harvard University - The Graduate School of Arts and Sciences : http://www.gsas.harvard.edu Facult de droit et des sciences sociales de luniversit de Poitiers : http://droit.univpoitiers.fr ENSAE ParisTech - Ecole Nationale de la Statistique et de lAdministration Economique : http://www.ensae.fr Ecole dingnieurs de Limoges 3IL : http://www.3il.fr/ Site du ple TICE de luniversit de Versailles Saint-Quentin-en-Yvelines : http://www.tice.uvsq.fr Le Journal Officiel : http://www.journal-officiel.gouv.fr/ Centre de recherches de larme de lair : http://www.crea.air.defense.gouv.fr/ Observatoire europen des politiques universitaires : http://oepu.paris-sorbonne.fr/ Centre rgional dinformation des Nations Unies pour lEurope occidentale : http://www.unric.org/ Universit Franaise dEgypte : http://portal.ufe.edu.eg/joomla/index.php Institut Pasteur : http://www.aidez-pasteur.com/ Le Petit Robert : http://www.lerobert.com/ Stade de France : http://www.stadefrance.com Portail interministeriel dinformation pour lducation artistique et culturelle : http://www.education.arts.culture.fr/ Un des sites de la Nasa : http://www.techbriefs.com/ ONG - Site du secrtariat de lassociation humanitaire CARE : http://www.careinternational.org/ Enseignes commerciales connues : http://www.danone.com/, http://www.sennheiser.fr/, http://www.mr-bricolage.fr/, http://www.cetelem-ebusiness.fr/, http://www.orexad.com/, http://portail.mindscape.com/

Elments de prennit:

Rfrences d'utilisateurs institutionnels:

Environnement utilisateur Liste de diffusion ou de discussion, support et forums:

Forum franais : http://forum.joomla.fr/ Forum US : http://forum.joomla.org/ Un site trs didactique pour comprendre Joomla! : http://joomla15.sarki.ch/ Administration de Joomla! 1.5.x : http://aide.joomla.fr/telechargements/Documentatio... Joomla! 1.0.x pour les nuls : http://aide.joomla.fr/telechargements/Documentatio... Scurit : Voii les 3 mesures importantes prendre pour prserver votre site et ses donnes. Les 2 premires sont trs simples mettre en oeuvre. Sauvegarde dun site web Joomla! : 1. Sauvegarde des fichiers du site : ces fichiers contiennent les images et autres fichiers lis (doc, flash, vidos), les fichiers programmes et les extensions installes 2. Sauvegarde de la base de donnes mysql : la base de donnes contient la structure du site (sections, catgories, articles, menus) 3. Il est trs important de mettre en oeuvre une procdure de sauvegarde quotidienne des fichiers et de la base de donnes de votre site. Joomla! est en effet une solution populaire en php/mysql et donc sduisante pour des attaques de hackers. La sauvegarde est donc une prcaution ncessaire. Mises jours : 1. Il est indispensable deffectuer les mises jour de scurit au plus vite. En effet, lexploitation dune faille de scurit peut se traduire de plusieurs faons sur votre site : simple dtournement de la page daccueil, suppression du contenu de la base de donnes, suppression des fichiers du site. 2. Ces mises jour sont trs simples appliquer, il sagit en gnral dun ensemble de fichiers installer dans le rpertoire du site web existant. Scurisation du serveur php/mysql : 1. Cette mesure consiste protger non plus directement lapplication Joomla! mais protger le serveur web/php/mysql qui lhberge. 2. Il ny a pas de fiche de recette toute faite (mme si certains points sont connus comme par exemple la mise OFF de la variable php register_globals). 3. Ce type dopration ncessite lintervention dun administrateur systme expriment.

Documentation utilisateur:

Divers (astuces, actualits, scurit):

Joomla : prix CMS Awards 2006 et 2007 (http://www.packtpub.com/award )

Conseils :

Le vocabulaire sections et catgories est peu comprhensible au dbut. Pour simplifier, considrer les sections comme des dossiers/rpertoires principaux et les catgories comme des sous-dossiers/sous-rpertoires. Chaque article doit en gnral appartenir une section et une catgorie. La version 1.5.x permet cependant davoir si ncessaire des articles indpendants des sections ou catgories. Les tapes de cration principales dun site Joomla! sont : 1. Cration des sections et catgories pour ranger les articles 2. Cration des articles 3. Cration des menus lis des sections ou catgories ou articles.

Contributions:

Joomla! Developer Network : http://developer.joomla.org/ Projets Open Source autour de Joomla! : http://joomlacode.org/

Vous trouverez ce document cette adresse: http://www.projet-plume.org/fiche/joomla

Licence Creative Commons by-nc-nd (Paternit, pas d'utilisation commerciale, pas de modification)

Joomla ! est un systme de gestion de contenu (CMS pourContent Management System) cr par une quipe internationale de dveloppeurs rcompense maintes reprises. Il vous permet de crer un site internet dynamique en toute simplicit et de mettre disposition de vos visiteurs des services (forum boutique en ligne galerie photos ...) le tout sans connaissance technique particulire...

Le support de cours qui suit est largement inspir par le trs bon livre Joomla! 1,5 de Hagen Graf aux ditions Pearson dans la collection Le Campus . Vous pourrez retrouver ces informations et plus encore sur le site de l'auteur :

http://joomla.cocoate.com/fr

Sommaire

1 Concepts fondamentaux 2 Installation 3 Visite guide du site dexemple 4 Adapter Joomla! Langue et modle 5 Structure de ladministration Joomla! ... chapitres retrouver sur Internet...

16 Un site Web complet avec Joomla! Annexe

1.1 Les systmes de gestion de contenus (CMS)Lexpression Systme de Gestion de Contenus est la traduction de CMS, acronyme dans lequel on trouve Content (contenu) et Management (administration ou gestion). Elle dsigne de faon vague un systme (logiciel) pour grer des contenus dinformation. Une ardoise et une craie forment un CMS ; lencyclopdie libre Wikipedia ou le site de vente aux enchres eBay sont aussi des CMS. Dans ces trois exemples, ce sont des contenus quil faut grer. Dans les deux derniers cas, le nombre de membres participants est phnomnal. Ces membres ont un rle majeur dans un CMS soit en tant quadministrateurs, soit en tant quutilisateurs (users) ou rdacteurs. Nous nen avons pas fi ni avec les acronymes. ct des CMS, il existe des systmes de gestion de donnes dentreprise ERP (Enterprise Resource Planning Systems), des systmes de gestion de la relation client CRM (Customer Relationship Management Systems), des systmes de gestion documentaire DMS (Document Management Systems), des systmes de gestion des ressources humaines HRM (Human Resource Management Systems), etc. Mme les systmes dexploitation tels que Windows ou Linux grent des contenus. Cette inflation demploi de la notion de contenu rend ardue la dfi nition du concept de CMS. Je trouve la dfinition suivante tire de Wikipdia comme trs explicite : Les systmes de gestion de contenu ou SGC (de langlais Content Management System ou CMS), sont une famille de logiciels de conception et de mise jour dynamique de site Web ou dapplication multimdia. Ces derniers temps, cest lacronyme ECMS (Enterprise Content Management System) qui a le vent en poupe en tant que concept gnral englobant tous les autres cits ci-dessus. Joomla! entre dans la catgorie des systmes de gestion de contenus Web WCMS (Web Content Management System), puisquil nest destin qu grer des contenus qui seront consults via un navigateur Web. Dans le langage courant, le terme gestion de contenus sans autre prcision est le plus souvent associ des pages Web pouvant tre gres via un navigateur. Ce qui ne simplifie pas ncessairement les choses.

1.3 Structure fonctionnelle dun CMSJe vais me baser sur Joomla! pour illustrer la structure dun systme de gestion de contenu Web.

1.3.1 Frontend (Frontal) et BackendUn systme CMS se base sur le couple Frontend et Backend. Le Frontend (partie vitrine) consiste en la page daccueil et toutes les autres pages du site telles que les voient les visiteurs et les utilisateurs identifis. Le Backend (partie arrire-boutique) contient linterface de gestion des pages par ladministrateur. Les activits de Backend comprennent la configuration, la maintenance, la cration des statistiques et des nouveaux contenus. Le Backend est situ une adresse Web diffrente de la page daccueil du site (donc du Frontend).

1.3.2 Droits daccsDs que lon parle dadministration, il faut introduire des rgles pour garantir lutilisation organise des ressources disponibles : ce sont les droits daccs. Dans un CMS, toutes les personnes concernes se voient attribuer un identifiant (nom dutilisateur) et un profi l daccs y est associ. Cohabitent ainsi des utilisateurs simplement reconnus, des crateurs et correcteurs de contenus qui ont plus de droits et un ou plusieurs administrateurs, qui ont accs tout. Selon le profil de droits daccs, la page daccueil du site se prsente diffremment ou bien lutilisateur bnficie dune interface dadministration distincte de la page daccueil.

1.3.3 ContenusLes contenus peuvent prendre des formes trs diverses : fichiers textes, images, liens, fi chiers audio, donnes extraites dune application comme Google Maps ou une combinaison de ces lments. Pour que la gestion de tous ces contenus soit simplifie, ils sont systmatiquement intgrs des structures daccueil. Les textes sont ainsi rpartis dans des catgories. Ces catgories consistent elles aussi en des contenus qui doivent tre administrables. Les flux dinformations RSS (RSS feeds) sont devenus trs populaires, dautant que la version 7 dInternet Explorer permet enfin de les exploiter. Au dbut 2008, plus de 75 % des internautes se servent encore de ce navigateur. Les flux RSS permettent dintgrer des donnes provenant de sources diverses. Lintgration, le classement, la valorisation, lhybridation et la mise jour de ce genre de contenus externes vont jouer un rle de plus en plus important et finiront par constituer un liant pour fondre ensemble des sites Web distincts au dpart.

1.3.4 ExtensionsLes composants, modules, templates et plugins sont runis sous le terme collectif extensions . Ils apportent des enrichissements fonctionnels par rapport ce que propose le noyau de Joomla!.

1.3.5 Templates (modles ou gabarits)Un template est une sorte de gabarit visuel prt recevoir des contenus. Il dtermine les couleurs, les polices, les tailles de caractre, limage darrire-plan, les espacements et la distribution des souslments dune page. Il constitue donc une mise en page. Un template runit au moins un fi chier HTML dcrivant la structure de la page et un fi chier CSS dcrivant les styles d'affichage. Un

template peut tre beaucoup plus complexe et rendre (afficher) des donnes de Joomla! accessibles de multiples manires ou en autoriser le recyclage.

1.3.6 PluginsUn plugin est un bloc de code qui vient se brancher en un point prcis de linfrastructure de Joomla! pour en modifier le fonctionnement. Vous pouvez par exemple utiliser un plugin dans un contenu pour charger le contenu dun module dans un texte. Pour pouvoir tendre la fonction de recherche dun site Web un composant supplmentaire, il faut lui associer un plugin. Les plugins peuvent parfois tre vus comme une langage de macros pour Joomla!.

1.3.7 ModulesUn module est une extension du domaine des contenus de la partie utilisateur. Il permet de disposer de nouvelles donnes provenant dun composant. Les modules peuvent tre mis en place des positions prdfinies dans le template. Un module li un composant permet de visualiser le contenu sous un format prcis ailleurs que dans le domaine des contenus du template. Par exemple, le module des dernires infos permet dextraire les titres des cinq derniers articles produits par les composants de contenu et de les transmettre au template. Il existe un autre module pour dterminer le nombre dutilisateurs actuellement connects et afficher le rsultat.

1.3.8 ComposantsJoomla! doit tre extensible pour sadapter lvolution des besoins. Le terme composant dsigne dans Joomla! des extensions qui ajoutent de nouvelles fonctions et sont en gnral gres par un domaine ddi de la partie administrative de Joomla!. Les principaux composants apparus ces derniers temps sont une boutique en ligne, une galerie de photos, une gestion de news et un forum de discussion. Les attentes actuelles en ce domaine sont notamment loptimisation des moteurs de recherche, la gestion des droits daccs, les formulaires multipages et les structures de contenus variables. Les composants incarnent la logique de traitement de votre site. Ils affichent les donnes du domaine de contenu de votre site Web (Main Body).

1.3.9 Chanes de production (workflows)Une chane de production (workflow, souvent non traduit ou bien traduit en flux de travaux) est une manire dorganiser formellement les interactions entre les processus et les personnes dans un objectif commun. Le service Expdition dune entreprise incarne une chane de production ; une recette de gteau en constitue une autre. Du fait quen gnral plusieurs personnes participent la gestion des contenus dun systme CMS, il est capital de dfinir de bonnes chanes de production. Un concept frquemment utilis dans ce contexte est celui de rservoir de tches dun utilisateur. Par exemple, un rviseur voit safficher en permanence la liste des nouveaux articles quil doit relire. Aprs lecture, il valide (ou non) chaque article, qui apparat alors dans la liste dentre du chef de rubrique qui dcide (ou non) de le placer en premire page.

1.3.10 Configuration gnrale et charte graphiqueCe paramtrage concerne toutes les pages du site : texte du titre dans la fentre du navigateur, mots cls pour les moteurs de recherche, options pour autoriser ou non lenregistrement du visiteur sur la page, pour rendre une page temporairement inaccessible, etc.

1.3.11 APIAPI est un acronyme (Application Programming Interface) anglais qui dsigne une interface de programmation. Il sagit dune convention stricte permettant deux programmes dentrer en interaction et de dialoguer. Il est devenu indispensable de pouvoir faire interagir Joomla! avec dautres programmes voire mme de le tlcommander. Cela ouvre de tous nouveaux horizons. Linterface API constitue la passerelle entre les crations des dveloppeurs tiers et le noyau Joomla!.

1.4 Joomla! en tant que btiment ?Joomla! est une sorte de bote de construction, qui vous permet, aprs mise en place sur un serveur, de crer puis de faire voluer votre site personnel. Joomla! ressemble une maison que vous dcidez de construire sur le terrain de votre choix et que vous agrandissez ensuite votre rythme. La mtaphore immobilire est donc pertinente. Stop ! Jai encens la mobilit et voil que je parle de choses immobiles ? Ne prenez pas peur. Limmeuble que vous allez btir va rsider physiquement quelque part (sur votre serveur), mais le monde entier pourra venir vous rendre visite quasiment la vitesse de la lumire. Pour rendre un immeuble habitable, il faut ajouter les quipements indispensables que sont le chauffage, llectricit et leau courante. Voil dailleurs une raison pour faire hberger votre site Joomla! sur un serveur qui ne souffrira jamais de pannes secteur puisquil sengage une disponibilit 24h/24 7j/7 . Comme dans une maison, Joomla! distribue lespace en pices : une pice pour accueillir les visiteurs, une pour prparer les repas, une autre pour discuter, un bureau et une pice intime que vous ne montrez quaux vrais amis. Certains prfrent les espaces ouverts, de style loft, qui combinent toutes les fonctions. Quelle que soit votre prfrence en matire de distribution des espaces, il faut ensuite amnager le tout (revtements de sol et de murs, meubles et dcoration) puis faire priodiquement le mnage. Tous vos visiteurs laissent des traces pas toujours dsirables. Pour que vos visiteurs puissent trouver votre maison, il vous faut une adresse que vous ferez connatre au plus grand nombre. Mais il ny a pas de rpertoire gnral sur Internet ; vous devrez donc vous soucier de comment mieux faire rfrencer votre site. Vous jouissez peut-tre dun jardin avec plusieurs portes daccs : un portail principal, une entre par une autre rue voire une porte drobe dans un coin du jardin, rserve aux bons amis. Ou bien vous ntes pas du style construire en dur, et prfrez les camping-cars, les tentes, les htels ou encore les rsidences communautaires. Ou alors vous choisissez de louer et de ne pas vous soucier de tous ces problmes. Si vous reliez les phrases prcdentes votre site Web, vous devinez quil est essentiel de dterminer ce que vous voulez faire, qui vous tes et comment vous dsirez paratre aux yeux du monde. On ne peut pas ne pas communiquer ! En revanche, on peut trop aisment mal communiquer et tre mal compris. Vous planifierez donc votre site Internet avec grand soin. Rflchissez aux textes, mais aussi aux couleurs, aux lments interactifs (calendrier, forum) et prvoyez toujours une zone rserve aux membresiez pas de guider vos visiteurs, sans pour autant les contraindre. Visitez de nombreux autres sites et voyez ce quil en ressort. Prenez le temps de rencontrer des personnes reprsentatives de vos futurs visiteurs. Vous vous fliciterez plus tard davoir enqut pralablement et davoir recueilli leurs avis. Vous serez tonn du nombre de choses auxquelles vous naviez pas pens. Cest une tactique rentable et efficace pour trouver de nouvelles ides et viter les plus grossires erreurs. Consacrez beaucoup defforts sur ces points, car ils sont dterminants pour le succs de votre prsence sur le Web.

1.5 Versions de Joomla!1.5.1 En constante volutionComme pour tout logiciel, Joomla! volue par tapes. Lquipe Joomla! a rendu publique le 1er septembre 2005 une feuille de route (roadmap). La premire version publie est la 1.0. Cette nouvelle numrotation visait viter toute confusion avec le logiciel Mambo dont Joomla! est issu. La version 1.0 est une version retouche de la version 4.5.2.3 de Mambo. Les retouches concernaient le changement de nom, quelques erreurs en attente et des correctifs de scurit. lheure o nous mettons sous presse, Mambo est arriv la Version 4.6.2. Dans les deux annes qui viennent de scouler, il y a eu treize versions de Joomla! 1.0.x. Elles ont permis damliorer une foule de petits dtails dans le code. Si vous en avez suivi lvolution, vous aurez remarqu avec joie que Joomla! est devenu de plus en plus fi able.

1.5.2 Convention de versionnage de Joomla!Les versions de Joomla! obissent la convention X.Y.Z :

X = Numro majeur. Ce chiffre progresse lors de modifications radicales du code source. Une nouvelle version majeure nest en gnral pas compatible avec les versions prcdentes. Y = Numro mineur. Ce chiffre progresse, en cas de modifications importantes au niveau fonctionnel. En gnral, la compatibilit est maintenue (moyennant quelques amnagements). Z = Numro de maintenance. Ce chiffre augmente de 1 ds quune nouvelle version est diffuse suite des corrections et suppressions de failles de scurit. La quantit de modifications est limite et les nouveauts fonctionnelles sont trs rares. La compatibilit est assure avec les versions prcdentes de mmes numros majeur et mineur (mmes valeurs X et Y).

Toute volution au niveau majeur (X) ou mineur (Y) correspond une full release. Dans ce cas prennent place des priodes probatoires en tat Alpha puis Bta. La dure de ces priodes de test nest pas fige et dpend de lquipe de dveloppement. Les versions Bta sont normalement mises disposition pendant trois semaines, ce qui permet aux concepteurs de composants de les adapter la nouvelle version. En revanche, une release de maintenance est immdiatement oprationnelle. La version 1.5.0 correspond la premire version majeure au bout de deux ans. Elle a dabord donn lieu des versions Alpha, puis Bta puis des versions candidates diffusion RC. Les crateurs de composants tiers ont eu le temps dadapter leurs produits la nouvelle version. La communaut a effectu des tests intensifs et les incompatibilits par rapport lancienne version ont t rpertories. Vous pouvez lire les dclarations et les rsolutions de problmes sur le site Web de Joomla! (dans le Bug-Tracker). Nhsitez pas apporter votre contribution si vous dcouvrez une erreur non encore dclare. Vous y trouverez galement la liste des amliorations les plus attendues. Le dveloppement de Joomla! 1.5 a commenc lautomne 2005, sans faire trop de bruit au dpart. Les ides taient dj trs claires cette poque, et la premire version Alpha est sortie en fvrier 2006.

1.5.3 Feuille de route (prvisions dvolution)Cette feuille de route (roadmap) est bien sr sujette modification ventuelle, mais elle donne une ide de la tendance gnrale. Version Date prvue Remarques Mambo 17 fvrier 2005 Dernire version stable de Mambo 4.5.2 Joomla! Septembre 1.0.x 2005 Joomla! Oct 2006 1.5 Bta 1 Reprise de la version Mambo 4.5.2.3, correction d'erreurs et de failles de scurit, dernire version stable de Joomla! Internationalisation (support complet de UTF8) Localisation de l'interface d'administration dans toutes les langues Plugins utilisateurs Base de donnes : support de MySQL et de MySQLi Systme de transfert FTP permettant de contourner le problme du mode scuris Safe Mode de PHP chez les fournisseurs d'accs Rvision profonde de la structure en vue de permettre de crer des sites Web accessibles avec Joomla! (au niveau infrastructure) Sparation de la logique de programmation de celle de prsentation Optimisation de l'exploitation par les moteurs de recherche (SEF) Mcanisme de mise en cache amlior Joomla! Mai 2007 1.5 Bta 2 Documentation des programmeurs (API, Howto) Optimisation de l'interface API Amlioration du cache Meilleur support des URL pour les moteurs de recherche Introduction de l'infrastructure JavaScript Mootools Intgration du Template accessible Beez dans le noyau Joomla! Juillet1.5 Dcembre RC1-4 2007 Documentation utilisateur Texte d'aide

Suppression d'erreurs Optimisation de scurit et de performances Tests multi-plates-formes et multinavigateurs Joomla! Janvier 2008 1.5 stable Version Pas de date suivante La vraie version stable

Nouveau systme de contrle des accs utilisateurs Versionnage des contenus Installation multisites (plusieurs pages Joomla! avec la mme installation) Mcanisme de mise jour Systme de fichiers virtuel Support de plusieurs bases de donnes

Tableau 1.1 : Feuille de route de Joomla! (dcembre 2007) 1.4.4 Quelques dtails des volutions Comme le Tableau 1.1 le laisse deviner, la version 1.5 est la premire version vraiment complte de Joomla!. Dans un premier temps, lquipe de Joomla! a dabord pris en compte lhritage provenant de Mambo avant de trouver sa propre voie. Les enrichissements incorpors dans Joomla! 1.5 montrent clairement dans quelle direction soriente le logiciel. Internationalisation

Tous les textes statiques peuvent dornavant tre traduits dans des fichiers en plusieurs langues. Cela concerne notamment la partie administrative qui ntait au dpart disponible quen anglais ; Support de l'criture de droite gauche (RTL, par exemple pour larabe, lhbreu, le farsi et lurdu) ; Conversion intgrale vers le jeu de caractres UTF-8 pour coder et afficher tous les caractres au format Unicode 16.

Plugins utilisateurs Ce qui sappelait auparavant Mambot sappelle dornavant un plugin. Aux premiers plugins de contenu (content), ddition et de recherche sont venus se joindre des plugins utilisateur (User), dauthentification, xmlrpc et systme. Ces nouveaux plugins permettent de mettre en place des mcanismes didentification daccs partir de programmes externes. Support de XML-RPC Le mcanisme XML Remote Procedure Call constitue une spcification permettant des logiciels

situs sur des plates-formes diffrentes et des environnements diffrents de communiquer. Cette spcification supporte tous les langages courants de programmation. Vous trouverez des librairies pour convertir le code vers XML-RPC. Joomla! est dot dune telle interface de programmation. Elle permet par exemple un utilisateur de transmettre une image depuis Flickr ou bien de rdiger un article avec OpenOffice pour le diffuser ensuite dans Joomla!. Les dveloppeurs ne sont pas en reste ; ils peuvent dornavant dialoguer avec Joomla! via cette interface depuis un programme Java. Support de plusieurs bases de donnes Joomla! 1.5 est dot dune couche logicielle de sparation grce laquelle il est possible dexploiter plusieurs versions de bases de donnes. Pour chaque installation Joomla!, il nest possible dutiliser quune seule base la fois. lheure actuelle, les deux versions MySQL 4.x et 5.x sont supportes mais dautres SGBD le seront ultrieurement. Systme FTP pour grer le problme du mode scuris de PHP Pour viter les problmes frquents de droit daccs aux donnes, il a t ajout une couche FTP. Elle permet dinstaller de nouveaux composants et deffectuer des transferts par tlchargement PHP et par FTP. Les paramtrages contraignants (mais justifis) imposs par les FAI au niveau du langage PHP rendaient souvent difficile linstallation dextensions et le tlchargement des fi chiers. Mise jour de linfrastructure Joomla! Dans les premires versions, il ny avait pas dinfrastructure au sens strict, cest--dire une bote outils aux limites bien dfi nies pouvant servir dinterface de programmation API. Peu aprs la rupture avec Mambo, il est devenu vident quil fallait modifier quasiment partout lancien code source. Il fallait reformuler et reprogrammer proprement les fonctions de Joomla!. Une infrastructure digne de ce nom (framework) doit tre souple, volutive, totalement spare de la partie affichage et surtout, aise prendre en main. Il faut que les dveloppeurs tiers puissent crer en peu de temps des composants de bonne qualit. Une interface API est donc devenue incontournable. Joomla!1.5 en possde une. Accessibilit Laccessibilit pour les personnes handicapes est un sujet important, puisque depuis dbut 2006 tous les sites gouvernementaux dAllemagne doivent tre conformes aux standards dicts par lorganisation W3C. Joomla!1.5 est livre avec un template offrant une accessibilit complte (il sappelle Beez). La conformit aux standards est ainsi assure. Pour garantir cette accessibilit, il faut se conformer des standards du Web (du code HTML/ XHTML validable) Il faut aussi sparer rigoureusement les contenus (les textes et les images) de la manire de les prsenter, en utilisant des feuilles de styles en cascade CSS. Actuellement, seule la partie visible par les visiteurs est conforme. La partie administrative le sera dans une version ultrieure. Elle est dj pilotable par un non-voyant. Adaptation aux moteurs de recherche Le support des adresses URL exploitables par les moteurs de recherche a t extirp du noyau de Joomla! pour constituer dornavant un plugin. Il devient ainsi den utiliser les possibilits partir de composants dautres programmeurs, ce qui tait trs difficile auparavant. Les projets Google Summer of Code Depuis lanne 2005, la socit Google parraine les programmeurs talentueux dans leurs projets Open Source. Elle attribue chacun 4 500 $ US dans le cadre dun projet appel Summer of Code

(programmation dt). Cela vite des tudiants de chercher un job dt et leur permet de se consacrer totalement leur passion, au profit de la communaut mondiale, et bien sr celui de Google. Chaque anne, Summer of Code donne Google loccasion de se faire connatre, de recueillir de bonnes ides et de reprer de bons programmeurs. Les projets Open Source y trouvent leur compte aussi grce ce brassage dides, aux contacts nous et aux rsultats concrets. Chaque tudiant est suivi par un membre issu de la communaut de chaque projet qui est dsign comme mentor. Les rsultats des projets ont t et sont toujours intgrs peu aprs dans Joomla!. Au cours de lanne 2007, plusieurs nouveaux projets concernant Joomla! ont t ainsi financs par Google. Voici les projets concerns :

Extension du modle des ensembles imbriqus grce des ensembles imbriqus liaisons figes. Enno Klasing (mentor Louis Benton Landry). Un projet permettant dimbriquer des catgories sans limite de niveaux. Interface de messagerie pour diffusion. Aini Rakhmawati (mentor Mateusz Krzeszowiec). Permet de crer des contenus Joomla! en envoyant des courriels. Intgration smantique du Web. Charl van Niekerk (mentor Robert Schley). Production du code gnr par Joomla! dans un format XHTML valide afin de servir de base pour constituer des sites Web accessibles et avancer dans la voie du Web smantique. Go-composant pour Joomla!. Mickael Maison (mentor Andrew Eddie). Intgration des standards gographiques tels que KML et GeoRSS pour exploiter ces donnes dans Joomla!, par exemple pour afficher le domicile de lutilisateur sur une carte. Plugin Eclipse pour modules et composants Joomla!. Muhammad Fuad Dwi Rizki (mentor Laurens Vandeput). Consiste produire un plugin Joomla! appropri lenvironnement de dveloppement Eclipse, ce qui permet de construire des composants Joomla! de faon trs confortable. Composant de recommandation gnrale pour les contenus Joomla!. Faolan CheslackPostava (mentor Samuel Alexander Moffatt). Permet de proposer automatiquement des contenus par analyse du contexte et du moment.

1.5.5 Caractristiques actuelles de Joomla!Voici la liste rsume des caractristiques actuelles de Joomla! :

code source disponible ; grande base installe dutilisateurs et de dveloppeurs ; systme de gestion de workflow simple ; systme de diffusion des contenus ; gestionnaire de tlchargement et la gestion des fichiers distants ; exploitation des contenus dans le format RSS ; corbeille pour les contenus effacs ; adresses URL compatibles avec les moteurs de recherche ; gestion de bannires publicitaires ; frontal et administration disponibles en de nombreuses langues ; interface d'administration spare de laccs Web normal ; langage de macros pour traiter les contenus (Mambots) ; mcanisme de cache pour assurer une gnration rapide des pages choisies ; installation facile des modles et composants complmentaires ; systme de modles simple mais complet (HTML, CSS, PHP) ; groupes d'utilisateurs hirarchiss ; statistiques de frquentation simples ; diteur de contenus visuel (WYSIWYG) ; gestion de sondages ;

mcanisme dvaluation des contenus.

Vous trouverez de nombreuses extensions sur le site http://extensions.joomla.org. Citons notamment :

gestion de forums ; gestion de galeries de photos ; systme de gestion documentaire ; calendriers.

Et presque 2 000 autres.

1.6 Exemples de sites grs par Joomla!Pour vous faire une ide de ce que lon peut obtenir en utilisant Joomla!, nous vous proposons une courte liste de sites rels. joomla.fr, France Cest le site de rfrence officiel en langue franaise (voyez aussi joomla.fr).

Figure 1.1 http://www.joomla.fr Travel Shop, Irlande Un site touristique exploitant un systme de menu original provenant de joomlart.com.

Figure 1.2 http://www.travelshopireland.com Mrio Moraes, Brsil Le site Web officiel dun coureur automobile. Le template accueille de nombreux objets anims au format Flash.

Figure 1.3 http://www.mmoraes.com Frank Ldtke, Allemagne Un bel exemple de combinaison de Joomla! avec la galerie de photos Coppermine.

Figure 1.4 http://www.livinggallery.de/ Feuille blanche, France Le site de deux crateurs graphiques.

Figure 1.5 http://www.feuilleblanche.com Urth.tv, USA Un site citoyen sadressant au monde entier !

Figure 1.6 http://www.urth.tv unric.org, Europe Les Nations Unies ont adopt Joomla!. Dans ce cas prcis, il fallait grer treize langues, et certaines devaient safficher en mme temps sur la mme page.

Figure 1.7 http://www.unric.org porsche.com.br, Brsil Pour finir en beaut, voici le site de limportateur brsilien des voitures Porsche. Il a accompagn

toute lhistoire de Joomla! depuis lpoque de Mambo et vient de basculer vers la version Joomla! 1.5.

Figure 1.8 http://www.porsche.com.br Vous trouverez dautres sites propulss par Joomla! en vous rendant dans la section Forum du site www.joomla.org. Cherchez le terme Showcase .

2 InstallationInstaller Joomla! ne prend que cinq minutes la premire fois et mme moins ensuite. Mais pour russir cette installation, il faut dabord mettre en place localement une sorte dInternet priv runissant un serveur Web, avec support du langage PHP, et un systme de gestion de base de donnes (SGBD) exploitable par Joomla!. Les fichiers de Joomla! seront ensuite installs dans cette structure de dossiers puis configurs via un installateur interface Web. Il sagit dun exemple typique denvironnement client-serveur.

2.1 Les systmes client-serveur 2.2 Prrequis techniques pour Joomla! 2.3 lments requis pour installer un systme Joomla! 2.4 Dabord localement 2.5 Prparation locale de linfrastructure dexploitation 2.6 Sur un serveur virtuel en rseau 2.7 Installation de Joomla!

2.1 Les systmes client-serveurPour vous faire une ide gnrale de ce qui se passe en coulisses, parcourons les tapes successives de laccs dun ordinateur client un site Web propuls par Joomla! : 1. 2. 3. 4. 5. 6. 7. 8. 9. tablissement dune connexion Internet via un fournisseur daccs. Saisie de ladresse Web (URL) dans le navigateur client. Entre en contact du navigateur avec le serveur Web. Le serveur Web retransmet une requte son interprteur de langage PHP qui excute les commandes PHP appropries Joomla!. Linterprteur PHP transmet les donnes dentre la base de donnes. Linterprteur PHP gnre du code dhabillage HTML ou XHTML (selon le modle/template utilis) et retransmet les donnes de la base avec lhabillage au serveur Web. Le serveur Web envoie la page complte au navigateur du client. Le navigateur interprte les balises de style HTML et CSS et intgre les donnes externes (images, lments Flash, etc.) en allant les chercher un un auprs du serveur Web. Pendant le chargement des diffrentes ressources, le navigateur ralise le plus fidlement possible le rendu de la page, cest--dire son affichage.

Vous comprenez que l'affichage dune page dun site Web Joomla! suit de nombreuses tapes. Plusieurs dentre elles ne concernent dailleurs pas Joomla! lui-mme.

2.2 Prrequis techniques pour Joomla!Joomla! ncessite la configuration suivante :

Un serveur Web oprationnel, par exemple Apache partir de la version 1.13.19 ou

Microsoft IIS. Le langage de script PHP partir de la version PHP 4.3. Le support de MySQL et de Zlib intgr PHP. Zlib est une librairie de fonctions qui permet PHP de lire des paquets de donnes compresses au format ZIP. Le systme de gestion de bases de donnes MySQL partir de la version 3.23.x. Dans le cadre de lutilisation du jeu de caractres Unicode, il faut utiliser MySQL partir de la version 4.1.x.

2.3 lments requis pour installer un systme Joomla!Il vous faut dabord runir tous les lments indiqus ci-dessus pour mettre en place un systme Joomla!. Vous disposez normalement dau moins un PC avec un navigateur Web et une connexion Internet. Au niveau du serveur Web, du langage PHP et de la base de donnes, de nombreux choix sont possibles. Vous pouvez en effet :

installer la totalit du systme localement sur votre PC ; implanter le systme sur un intranet dentreprise ou un serveur de lentreprise ; louer un serveur virtuel (partag) un fournisseur daccs ; louer ou acheter un serveur ddi un fournisseur daccs (avec accs la racine). installer le serveur Web et le gestionnaire de bases de donnes sur des machines distinctes. diffrentes marques de serveurs Web ; diffrentes versions de linterprteur PHP ; diffrentes versions du gestionnaire de bases de donnes MySQL.

Mieux encore, vous pouvez :

Vous pouvez enfin exploiter :

De plus, tous ces composants sont utilisables sur plusieurs systmes dexploitation. Cette grande libert dans le choix des ressources techniques peut effrayer au premier contact. Passons donc en revue quelques situations typiques.

2.3.1 Environnement de test localVous tes chez vous ou votre bureau et vous voulez construire un site Joomla!. Systme dexploitation WindowsVariante 1

Dans Windows XP Professionnel et Vista Ultimate, vous disposez en standard dun serveur Web appel Internet Information Server (IIS). Il ne reste plus qu y ajouter le langage PHP et un gestionnaire de bases de donnes.

Variante 2

Vous installez un paquetage prconfigur de type XAMPP et vous pouvez immdiatement travailler. Systme dexploitation Linux Dans ce cas, tout dpend de la distribution. Toutes permettent dinstaller facilement via la souris les paquets logiciels de Apache, PHP et MySQL. Dans certaines distributions, ces diffrents composants sont installs ds le dpart.Variante 1

Vous vous servez des programmes qui ont t installs avec la distribution.Variante 2

Vous installez un paquetage prconfigur de type XAMPP (LAMPP dans ce cas) et vous pouvez immdiatement travailler. Systme dexploitation Mac OS X Vous disposez en standard dun serveur Web (Apache), mais il faut encore lactiver. En revanche, le langage PHP nest pas install. Il nexiste aucune version de PHP officielle pour Mac OS X. Vous pouvez en revanche mettre en place un module Apache-PHP. Il existe galement des versions de MySQL pour Mac OS X, que vous devrez tlcharger.Variante 1

Vous utilisez le serveur Web Apache dj install et vous ajoutez les composants manquants.Variante 2

Comme dans les deux autres systmes, vous vous procurez le paquetage prconfigur XAMPP dans sa version Mac OS X. Vous linstallez et cest prt. Dans lenvironnement Mac OS X, vous pouvez prfrer la version ddie qui sappelle MAMPP.

2.3.2 Environnement de productionVous avez ici aussi plusieurs possibilits. Serveur virtuel en location Vous signez un contrat de location de serveur Web auprs dun fournisseur daccs avec une fonction de gestion de bases de donnes, le support du langage PHP et souvent aussi votre propre nom de domaine. Vous disposez alors dun environnement permettant dinstaller Joomla!. Vous devez vrifier avec votre fournisseur quelles versions de PHP et de MySQL il peut mettre en place. Il arrive que le fournisseur propose Joomla! prinstall avec plusieurs templates. Il ne vous reste plus alors qu activer Joomla! la souris pour en profiter. Serveur ddi Vous louez auprs dun fournisseur un serveur ddi et vous y installez un systme dexploitation votre convenance. Vous tes ladministrateur du systme et vous pouvez vous en servir comme si la machine tait pose chez vous ou dans votre bureau.

2.4 Dabord localementAvant de plonger dans le monde sauvage dInternet, nous vous conseillons de vous entraner la maison sur votre PC. Cela vous offre lavantage de ne pas subir les ventuels ralentissements de votre connexion Internet. Mais vous avez dj peut-tre chez vous un petit rseau reliant plusieurs PC. Vous pouvez alors installer Joomla! sur un PC (qui devient le serveur) et y accder depuis un autre PC (le client). Pour vous pargner de nombreux tlchargements, nous fournissons tous les programmes dont vous avez besoin sur le CD-ROM. Les diffrents paquetages logiciels sont indiqus dans lAnnexe. Ces programmes conviennent une installation locale et vous permettent de raliser tous les exercices prsents dans le livre. Rappelons nanmoins que ces logiciels sont en volution continuelle. Vous pourrez sans doute rcuprer des versions plus rcentes sur les sites Web officiels des diffrents composants. Attention: Lorsque vous dploierez Joomla! sur un serveur Web rel (public), vrifiez que vous installez la version stable la plus rcente et compatible avec vos donnes afi n de profi ter des derniers correctifs de scurit. Ninstallez pas dans ce cas de version prliminaire.

2.5 Prparation locale de linfrastructure dexploitationPour installer Joomla! localement sur un PC, vous devez avant tout mettre en place linfrastructure logicielle dont le logiciel a besoin : Apache-MySQL-PHP.

2.5.1 Sous WindowsWindows (XP et Vista) est rput pour sa convivialit et son norme diffusion, dans la mesure o plus de 90 % des PC au monde en sont dots. Les trois applications Apache, MySQL et PHP ne sont pas fournies par Microsoft, puisquelles manent du monde du logiciel libre.

Figure 2.1 Gestion des utilisateurs sous Windows. Vous pouvez installer chacun des trois logiciels lun aprs lautre, mais il existe des paquets prconfigurs qui vous simplifient la vie. Sous XP comme sous Vista, vous devez avoir ouvert la session de travail en tant quadministrateur. En cas de doute, ouvrez le module de gestion des utilisateurs par DMARRER > PARAMTRES > PANNEAU DE CONFIGURATION > COMPTES DUTILISATEURS et modifiez vos droits (voir Figure 2.1). Sous Vista, choisissez DMARRER > PANNEAU DE CONFIGURATION > COMPTES DUTILISATEURS ET PROTECTION DES UTILISATEURS. XAMPP pour Windows XAMPP est un projet de Kai Seidler et Kay Vogelgesang. Ces deux collgues produisent depuis plusieurs annes dj un environnement de dveloppement complet partir des ingrdients Apache, MySQL, PHP, Perl et plusieurs autres extensions appropries puis mettent le fruit de cette synthse disposition sur leur site Web au format ZIP pour plusieurs systmes dexploitation. Cela constitue un norme avantage pour vous comme pour moi, puisque cest Joomla! qui nous intresse ici, et quil nous importe de ne pas perdre de temps avec linfrastructure quil lui faut. Le programme peut mme tre dsinstall par simple clic sur votre PC sous Windows. Passons maintenant aux choses concrtes : linstallation. Commencez par rcuprer le fi chier nomm xampplite-win32-1.6.5 depuis le CD-ROM ou depuis le site Web (http://www.apachefriends.org). Vous dcompressez larchive par double-clic sur le nom de fi chier (voir Figure 2.2). Vous pouvez dsigner directement une autre unit de disque. Le rsultat est une arborescence de dossiers dont la racine se nomme xampplite (voir Figure 2.3).

Figure 2.2 Extraction vers le disque C:

Figure 2.3 Lexplorateur Windows dans Vista. Double-cliquez sur le programme appel xampp-control.exe situ dans le dossier xampplite. Utilisez ensuite les boutons START pour dmarrer Apache, puis MySQL. PHP sera dmarr en mme temps que le serveur en tant que module Apache (voir Figure 2.4). Sachez que XAMPP ne cre aucune entre dans la base de registre de Windows et nutilise aucune variable systme. Il peut arriver que le pare-feu Windows vienne bloquer votre enthousiasme. Il peut par exemple vous avertir que vous essayez de lancer deux serveurs et vous demande de confirmer. Confirmez que vous ne voulez plus que votre programme soit bloqu par le pare-feu (voir Figure 2.5). Sous Vista, vous devez confirmer dans une seconde bote.

Figure 2.4 Le panneau de commande de xampp-control.exe.

Figure 2.5 Bote davertissement du pare-feu de Windows Vista. Il faut maintenant tester laccessibilit du serveur. Dans votre navigateur Web, saisissez ladresse locale dans lun des deux formats suivants :http://127.0.0.1/ http://localhost/

Vous devez voir safficher la page daccueil de XAMPP. Cliquez sur le lien intitul FRANAIS pour accder la page suivante :

Figure 2.6 Page daccueil de XAMPP sous Windows. Le rpertoire racine des documents de votre page daccueil est :[disque]\xampplite\htdocs

Ce rpertoire contiendra toutes les pages qui devront tre accessibles depuis dautres machines sur Internet. Parcourez le fi chier readme_fr.txt pour connatre les dtails au sujet des mots de passe requis et dcouvrir dventuelles remarques relatives la scurit. La dsinstallation est fort simple. Aprs avoir arrt les deux serveurs, vous effacez le contenu du rpertoire de xampplite. Attention: Si le serveur Web Apache ne russit pas dmarrer depuis XAMPP lite, il est possible quun autre service utilise dj le port 80. Cest par exemple le cas de loutil de tlphonie Skype. Dans les anciennes versions, il occupait le port 80 et empchait ainsi un autre service dy accder. Affichez les options de Skype pour modifi er le numro de port utilis. Vous pouvez aussi dmarrer XAMPP lite avant Skype.2007

2.5.2 LinuxSous Linux, les choses sont souvent trs simples. Plusieurs distributions sont dj dotes de configurations standardises. Le trio Apache-MySQL-PHP est en gnral dj install et nattend que dtre dmarr. Vous pouvez aussi installer la version Linux de XAMPP. Daprs moi, il est plus logique dinstaller les programmes dorigine un un. Ces installations sont trs simples puisquelles se droulent dans le gestionnaire de paquets. SuSE (10.x), OpenSuSE Sous SuSE et OpenSuSE, le programme YaST permet de sassurer que Apache, MySQL et PHP sont dj en place. Si ce nest pas le cas, il suffi t de slectionner les paquets correspondants pour

installation et de laisser faire YaST. Les paquets logiciels concerns sont les suivants :apache2, apache2-devel, apache2-mod_php5 mysql, php5-mysql

Reprez ces paquets dans linterface de YaST (voir Figure 2.7) sur les supports de la distribution ou sur des pages Web ddis.

Figure 2.7 Le Gestionnaire de paquets YaST. Dmarrez le serveur Web Apache ainsi :/etc/init.d/apache2 start

Dmarrez ensuite le SGBD MySQL ainsi :/etc/init.d/mysql start

Vous arrtez les deux programmes en remplaant dans la commande la mention start par stop. La mention help rappelle les paramtres autoriss. Debian/Ubuntu Dans le cas de Debian (et de ses drivs, tels que Ubuntu), loutil de gestion dinstallation est apt.apt-get install [nompaquet]

Les paquets installer sont les suivants :

apache-common. Fichiers de support pour tous les serveurs Apache. php5. Langage de script du ct serveur imbriqu dans le HTML. mysql-common. Fichiers principaux de MySQL (par exemple /etc/mysql/my.cnf). mysql-server. Excutables du serveur de base de donnes.

Vous trouverez ces paquets via apt sur Internet ou sur les CD/DVD de la distribution. Dmarrez ensuite Apache puis MySQL par les deux commandes indiques plus haut pour SuSE.

Mise en place dun serveur chez un fournisseur daccs Lorsque vous avez dcid de louer linfrastructure dun site Web chez un fournisseur, vous avez normalement le choix entre plusieurs distributions Linux et un accs en mode Commande au systme. Le systme est normalement prconfigur avec tous les paquets logiciels et fichiers de configuration ncessaires. Le paramtrage se base en gnral sur un outil ddi interface Web comme Confixx ou Plesk qui permet notamment de dmarrer, darrter et de configurer les services Apache et MySQL

2.6 Sur un serveur virtuel en rseauCe thme est rendu plus complexe, en raison de la grande disparit des configurations proposes par les nombreux hbergeurs de sites Web, mme si la plupart utilisent le trio gagnant Apache-PHPMySQL. Tous nutilisent pas la mme version et les outils dadministration de lespace Web sont trs divers (Confins, Visas, etc.). Voici les principaux points surveiller :

l'tat actif ventuel dun mode PHP scuris (Saxe Mode) dans le fi chier phonique (PHPSaxe) ; l'ventualit dune non-conversion des adresses URL par Apache cause de la dsactivation de sa fonction Rewrite Engine ; les droits d'accs aux sous-dossiers (permissions) qui sont dfinis autrement sous Linux et sous Windows.

Lapproche qui est en gnral la plus susceptible de vous mener au succs est la suivante : 1. Rcuprez le fi chier Joomla_1.5.x-Stable-fr.zip (la plus rcente version stable) sur votre PC local et dsarchivez le contenu dans un dossier temporaire. 2. Transfrez les fichiers de larchive par FTP sur le serveur Web dans un dossier accs non restreint. Le nom du dossier est souvent htdocs, public_html ou encore html. Vous pouvez crez un sous-dossier pour Joomla!. La plupart des hbergeurs autorisent le renvoi vers un sous-dossier partir du nom de domaine. Ce nom est capital, car cest celui que devront indiquer les visiteurs de votre site. 3. Vous devez dcouvrir le nom de votre base de donnes. La plupart des hbergeurs mettent une ou plusieurs bases de donnes disposition dans le cadre du forfait. Parfois les identifiants dadministrateur et de base et les mots de passe sont fi gs, parfois ils doivent tre crs, et parfois ils existent dj, mais sont personnalisables. Vous intervenez ce niveau via un outil interface Web. La figure suivante donne un exemple dun tel outil. Notez ces informations qui vous seront ncessaires pour installer Joomla!.

Figure 2.8 Exemple doutil de configuration Web. Une fois que vous avez transfr les donnes sur le serveur et disposez des informations daccs ( la base notamment), vous pouvez vous engager dans linstallation de Joomla!.

2.7 Installation de Joomla!Pour installer Joomla!, procurez-vous la plus rcente version stable, par exemple Joomla_1.5.xStable.tar.gz. Stockez le fichier dans un dossier spcifique de votre systme.

2.7.1 Choix du dossier dinstallationVous devez choisir entre implanter le programme Joomla! directement dans le dossier racine des documents du serveur (/xampplite/htdocs) ou dans un sous-dossier. Le choix influe sur ladresse publique que devront saisir les visiteurs pour accder votre page daccueil. Exemple Si vous installez Joomla! directement dans le sous-dossier /htdocs, vous accdez votre page d accueil en indiquant le nom de votre domaine du style http://www.monsite.fr (ou http://localhost/ pour les essais locaux). Si vous crez un sous-dossier dans /htdocs/ du type /htdocs/Joomla150/, puis y implantez les fichiers de larchive, il faut ensuite indiquer http://localhost/Joomla150/ pour accder au site. Pour les essais locaux, cela ne pose pas de problme, mais ladresse est moins facile mmoriser pour les visiteurs. Votre environnement dexploitation local xampplite sous Windows installe quelques fichiers HTML et quelques sous-dossiers dans /htdocs, par exemple pour la page daccueil de xampplite (voir Figure 2.6). Il en va de mme sous Linux, avec dinfimes variations selon la distribution et les rglages du serveur. Rpertoire racine Nous vous proposons dopter pour lapproche du sous-dossier. Crez dans /xampplite/htdocs, un sous-dossier nomm joomla150. Sous Windows, utilisez lExplorateur et, sous Linux, la ligne de commandes ou votre navigateur de fichiers prfr (Konqueror, Nautilus, Midnight Commander) :[Installation de XAMPP]/htdocs/joomla150/

Aprs cette opration, la structure arborescente devrait se prsenter ainsi (exemple sous Windows en Figure 2.9).

Figure 2.9 Le dossier devant recevoir Joomla!. Si vous tentez maintenant daccder ladresse locale http://localhost/joomla150/, vous voyez avec Xampplite une page vide (voir Figure 2.10).

Figure 2.10 Affichage du sous-dossier vide par Apache. Sous Linux ou si la configuration est diffrente, vous recevrez peut-tre un message vous indiquant que vous navez pas accs en criture ce dossier. Cette situation dpend de la configuration du serveur Web qui empche, pour des raisons de scurit, l'affichage du contenu des dossiers. En effet, un attaquant potentiel pourrait se servir de ces informations pour prparer un mauvais coup. Souvent, vous ne pouvez mme pas au dpart aller modifier le paramtre dans le serveur Web Apache car le fichier est protg. Si vous avez supprim cette interdiction, laissez malgr tout la protection prcdente en vigueur (masquage des contenus des dossiers). Dsarchivage Vous pouvez maintenant extraire les fichiers de larchive (paquet) Joomla! et les placer dans le sous-dossier que vous venez de crer (y compris tous les sous-dossiers, tels quels). Le fichier darchive est au format Tarball compress. Sous Windows XP ou Vista, vous avez doffice accs au contenu dans lexplorateur. Dans les anciennes versions de Windows, vous devez disposer dun utilitaire du style TUGZip (www.tugzip.de). Cette structure est la mme quelle que soit la plate-forme, seul l'affichage pouvant varier. La figure suivante montre la fentre dun logiciel client FTP. Le volet gauche est le disque local et le volet est le serveur Web. Installateur Web de Joomla! partir de maintenant, tout va aller trs vite, car Joomla! est dot dun installateur fonctionnant dans votre navigateur. Allez ladresse http://localhost/Joomla150/.

Figure 2.11 Les fichiers de Joomla! installs.

Figure 2.12 Transfert de Joomla! via FTP sur un serveur. tape 1 Choix de la langue Linstallateur vous demande en franais de choisir votre langue. Vous tes face la premire des sept tapes de linstallation. Une fois votre choix fait, cliquez sur le bouton SUIVANT en haut droite (voir Figure 2.13).

Figure 2.13 Installateur Choix de la langue. tape 2 Vrification de prinstallation Vous passez alors ltape de vrification (voir Figure 2.14). Cette prcaution permet de vrifier que lenvironnement logiciel convient linstallation de Joomla!.

Figure 2.14 Installateur Vrification de prinstallation. Si vous voyez une grande majorit de tmoins verts, cest bon signe. Les dtails varieront selon votre configuration. Linstallateur de Joomla! tient comptes des options de configuration du serveur Web Apache, de PHP et du systme dexploitation. Vous devez notamment vous souciez des droits daccs en criture si vous utilisez un systme de type Unix (Linux, Mac OS X). Intressez-vous particulirement au fichier nomm configuration.php qui est gnr en fin dinstallation avec des valeurs spcifiques. Si linstallateur na pas le droit dcrire dans le dossier concern, Joomla! ne peut pas gnrer ce fichier et linstallation choue. Prenez donc le temps de configurer correctement les droits daccs. Vous pouvez alors cliquer sur le bouton VRIFIER NOUVEAU. Attention: Tous les systmes dexploitation actuels (Windows, Linux, Mac OS X) sont multi-utilisateurs et tous disposent dun mcanisme de contrle des accs aux fichiers et aux dossiers utilisant plusieurs niveaux : lecture, criture, lecture/excution, modifi cation et accs complet. Les dtails des droits

daccs varient dun systme lautre. Dans la ligne des systmes Windows, une ligne de dmarcation peut tre trace entre les systmes antrieurs Windows NT (dont Windows 98 et Me) et les systmes postrieurs NT (XP et Vista). partir de NT, les dossiers, les fichiers et les processus sont grs par des listes de contrle daccs ACL. Si ces listes ACL ne sont pas dfinies, tous les utilisateurs ont un accs complet tous les objets. Voil pourquoi vous naurez au dpart aucun problme pour exploiter XAMPP et Joomla! sur un tel systme. En revanche, dans Vista, la scurit a t renforce pour lexcution des processus. Cest pourquoi vous devez en gnral autoriser explicitement lexcution dun serveur Web et dun gestionnaire de bases de donnes. Dans les systmes de style Unix (Linux, Mac OS X) les droits daccs sont grs pour trois groupes dutilisateurs (le propritaire, son groupe et les autres) avec les niveaux lecture, criture et excution. Vous modifiez les attributs de droits daccs des utilisateurs au moyen de la commande chown et les droits daccs aux fi chiers au moyen de la commande chmod. Votre outil de transfert FTP dispose de ces deux commandes (il suffit en gnral de faire un clic droit sur le nom du fi chier dont vous voulez modifier les droits). Pour une explication complte, voyez par exemple la page suivante : http://fr.wikipedia.org/wiki/Permissions_Unix Dans le cas dun serveur partag chez un fournisseur daccs, il peut arriver que le serveur Web soit configur avec des droits et des permissions diffrents de ceux dont dispose lutilisateur de FTP. Lorsque vous transfrez un fi chier, il hrite des droits daccs du serveur Web (par exemple avec lutilisateur wwwrun). Il peut arriver que vous ne puissiez plus ensuite supprimer le fichier partir de votre compte dutilisateur FTP (par exemple, Bertrand). La raison en est que lutilisateur FTP nest pas dans le mme groupe dutilisateurs que le serveur Web. Si vous optez pour la solution rapide XAMPP lite sous Windows, vous devriez obtenir le mme rsultat que dans les figures de ce livre. Cliquez sur le bouton SUIVANT pour passer ltape de la licence. tape 3 Licence Tout logiciel est diffus avec une licence. Dans le cas de Joomla!, il sagit de la licence de logiciel libre GNU/GPL dans sa version 2.0 (voir Figure 2.15). Attention: Vous trouverez une traduction franaise non officielle de la licence ladresse suivante : http://www.linux-france.org/article/ these/gpl.html Prenez le temps de parcourir ce texte. Il sagit dun des textes les plus connus dans le monde du logiciel.

Figure 2.15 Installateur Licence. tape 4 Base de donnes Ltape suivante propose un formulaire concernant les paramtres daccs la base de donnes (voir Figure 2.14). Dans lenvironnement xampplite, vous pouvez exploiter autant de bases que ncessaire. Un utilisateur existe avec le nom root sans mot de passe. Dans le SGBD MySQL, lutilisateur nomm root est ladministrateur. Il a plein accs ce systme. Linstallation sans dfinir de mot de passe est une brche de scurit qui nest acceptable que lors dune installation locale, en vue de prendre en main le systme rapidement. Une fois votre site prt tre publi, vous devez absolument le protger au moyen dun mot de passe (http://localhost/security/). Uniquement dans le cadre dune installation locale, vous pouvez spcifier les valeurs suivantes :

nom du serveur : localhost ; nom d'utilisateur : root ; mot de passe : [laisser vide mais attention la scurit !].

Il vous reste encore choisir le nom de la base de donnes. Dans une installation locale XAMPP, vous pouvez dfinir plusieurs bases auxquelles lutilisateur root aura accs. Dans un environnement de production sur un serveur distant, une limite au nombre de bases de donnes vous sera sans doute impose. De plus, les paramtres daccs vos bases sont prdfinies par le fournisseur daccs. Nous pouvons dans notre situation indiquer le nom dune base qui nexiste pas encore (joomla150). Cliquez ensuite dans le triangle vert des paramtres avancs.

Figure 2.16 Installateur Configuration de la base de donnes. Vous pouvez alors choisir de supprimer ou de sauvegarder les tables de donnes dune installation Joomla! antrieure en remplaant le prfixe actuel par le prfixe bak_. Le prfixe de table MySQL est un paramtre trs pratique. Il est ajout en dbut de nom de toutes les tables gnres par linstallateur ; il est ainsi possible de distinguer les tables des diffrentes bases. Par dfaut, linstallateur propose jos_. Ce prfixe sert notamment lorsque lhbergeur ne fournit quune seule base de donnes. Dans ce cas, le prfixe est le seul moyen de distinguer les tables lorsque vous crez deux sites Web avec Joomla!. Vous pouvez ainsi jongler avec les tables, comme dans jos_dubois_ ou jos_dupont_. Conservez le prfixe propos, jos_. Ce prfixe permet ensuite de distinguer les donnes sauvegardes (bak_). tape 5 Configuration FTP partir de la version 1.5, Joomla! permet dviter les problmes de droits daccs provoqus par un ventuel mode scuris PHP (Safe Mode). Vous pouvez dornavant exploiter les fonctions FTP de PHP pour transfrer et grer les donnes distantes. Cela ne vous concerne pas dans le cas dune installation locale de XAMPP lite. En revanche, si vous comptez installer Joomla! sur un serveur Web partag, spcifiez les paramtres FTP ici, tels que vous les a transmis votre fournisseur. Sil autorise cette fonction, vous avez galement pour des raisons de scurit tout intrt crer des comptes FTP diffrents pour vous en tant quutilisateur et pour Joomla!. Nautorisez le compte FTP Joomla! que pour le dossier Joomla! correspondant (voir Figure 2.17).

Figure 2.17 Installateur Configuration FTP. tape 6 Configuration du site Cette importante tape de configuration de Joomla! compte trois parties. Dans la premire partie, vous devez fournir le nom de votre site Web. Il apparatra par exemple dans la barre de titre du navigateur de vos visiteurs. Il est galement utilis en diffrents autres endroits, par exemple dans les courriels de confirmation dinscription. Dans notre exemple, nous choisissons le nom Joomla! 1.5.0 (voir Figure 2.18).

Figure 2.18 Installateur Configuration du site (mot de passe). Dans la deuxime phase, vous devez dfinir les chemins daccs au site Web, ladresse de messagerie de ladministrateur et son mot de passe. Notez bien ce mot de passe et placez votre note dans un endroit sr (ne la collez pas sur lcran ni sous le clavier). Dans la dernire phase, vous pouvez dcider quelles donnes doivent tre disponibles ds le dpart dans Joomla! (voir Figure 2.19).

Figure 2.19 Installateur Configuration du site (donnes dexemples). Installation des donnes dexemples Linstallateur de Joomla! vous invite fortement installer les donnes dexemples pour peupler votre site Web initial. Cela vous permettra dexplorer le programme sans crainte. Charger le script SQL local Lorsque vous avez construit un site Web Joomla! local, vous aurez besoin de transfrer les donnes vers votre site sur Internet. Cette option permet dindiquer les fichiers .sql de la version locale qui contiennent vos donnes Joomla!. Le contenu des fichiers doit concider parfaitement avec le schma de base de donnes de Joomla! 1.5 et utiliser le codage de caractres UTF8. Nous donnons dautres dtails ce sujet dans lAnnexe. Charger le script de migration Cette option permet de convertir une ancienne installation Joomla! 1.0.x vers la version 1.5. Nous dcrivons la migration dans lAnnexe. Vous constatez que linstallateur propose par dfaut dinstaller les donnes dexemples. Acceptez cette option car nous dcouvrirons Joomla! en nous servant de ces exemples. Cliquez donc sur le bouton INSTALLER LES DONNES DEXEMPLES. Linstallateur sexcute puis modifie laffichage (voir Figure 2.20). Observez bien car il nest pas trs vident de sassurer que lopration a russi. Le bouton disparat au profit dune petite fentre contenant du texte.

Figure 2.20 Installateur Confirmation dinstallation des donnes dexemples. Il ne reste plus qu cliquer sur le bouton SUIVANT pour que vos donnes soient prises en compte. tape 7 Terminer Cette dernire tape vous flicite pour avoir russi linstallation (voir Figure 2.21). Lisez bien le message crit en rouge et en gras. Vous devez absolument aller supprimer le sous-dossier nomm installation (dans xampplite\htdocs\joomla150). Si vous ne le faites pas, votre site Web ne pourra pas fonctionner.

Astuces: Les lecteurs qui dsireraient voir comment construire un site Web partir de zro trouveront une rponse au Chapitre 16. Info: Un fi chier nomm configuration.php a t gnr dans votre dossier joomla150. Si vous devez relancer linstallation, il faut supprimer ce fichier avant de tenter de supprimer le dossier principal dinstallation. Cela permet linstallateur de redmarrer partir de zro lorsque vous demanderez accder depuis votre navigateur ladresse laquelle se situent les donnes Joomla!. Votre identifiant dadministrateur est toujours admin. Vous avez bien not le mot de passe ? Info: Si vous avez oubli ou perdu le mot de passe, lAnnexe donne une solution.

Figure 2.21 Installateur Terminer. Linstallation est termine. Vous pouvez maintenant personnaliser votre site et y insrer des contenus. Vous avez le choix entre accder la page daccueil (bouton SITE en haut droite) ou la partie administrative (bouton ADMIN). Allez donc dabord voir quoi ressemble la partie publique de votre site en cliquant sur SITE. Si vous navez pas encore supprim le sous-dossier installation, un message vous redemande de le faire. Vous pouvez ensuite actualiser la page. Le rsultat est tout fait encourageant (voir Figure 2.22). Prenez possession de votre proprit, cliquez, trouvez vos repres. Ce site dexemple prsente de nombreuses fonctions de Joomla!. Nous allons les dcouvrir une une dans le chapitre suivant.

Figure 2.22 La page daccueil du site juste aprs installation de Joomla!.

3 Visite guide du site dexempleVotre site est install et paramtr. Nous pouvons maintenant aller voir ce quil permet denvisager. Au premier coup doeil, la page peut sembler assez charge. Il sagit de la page publique (Frontend). Il existe aussi une page daccueil pour ladministration (Backend). Seule la partie publique est accessible aux visiteurs, comme une boutique. La partie arrire, latelier, nest connue que des administrateurs, auteurs et rdacteurs de contenus.

3.1 Partie publique Frontend 3.2 Administration (Backend)

3.1 Partie publique FrontendSi vous analysez la page, vous dcouvrez des rgions distinctes qui correspondent autant de fonctions. Le choix dimplanter des donnes dexemples lors de linstallation permet de visualiser leffet de ces diffrentes fonctions. Pour simplifier la dcouverte, nous avons ajout des lgendes aux diffrentes sections, dans la figure suivante.

Figure 3.1 Structure de la page daccueil du site dexemple. Lart de la conception Web a comme objectif de permettre au visiteur de reprer le plus vite possible les lments essentiels, en ignorant dans un premier temps ce qui lest moins, en somme dorganiser le placement des informations de faon logique, agrable et facile apprhender. Le rsultat est toujours un compromis entre richesse fonctionnelle et esthtique.

Larchitecture dune page Web peut faire penser un journal ou un portail comme celui de Yahoo! ou de Wanadoo. Des colonnes gauche et droite proposent des encadrs (modules) aux contenus prdtermins. La partie centrale (Main Body) reoit les informations. La mise en page est dfinie par un template (modle). Vous pouvez changer de modle sans changer de contenu ou bien modifier le template courant, souplesse que la presse quotidienne envie au Web. Dcouvrons la maquette dexemple. Elle contient cinq catgories de sections :

des menus ; des contenus ; des publicits ; des fonctions complmentaires ; des lments dcoratifs.

3.1.1 Les menusLes menus doivent permettre au visiteur de naviguer sur le site le plus aisment possible. Il existe des menus diffrents selon les besoins. Joomla! propose dans lexemple six menus prdfinis, et vous pouvez en ajouter dautres ou en masquer certains. vrai dire, un des menus nest pas visible dans lexemple. Il sagit du type usermenu, qui nest visible que par les utilisateurs enregistrs une fois quils ont ouvert une session. Le menu suprieur (topmenu)

Figure 3.2 Le menu suprieur. Joomla! propose tout en haut de page un menu horizontal dont le nom technique est topmenu (voir Figure 3.2). Il doit permettre au visiteur daccder depuis nimporte quelle page aux contenus essentiels : retour la page daccueil, actualits, contact et liens. Le menu principal (mainmenu) Le menu principal (nom technique mainmenu) est le moyen de navigation principal de toute page (voir Figure 3.3). Ce menu doit toujours proposer un lien pour revenir la page daccueil (Home) et se trouver au mme endroit sur toutes les pages. Il participe au confort de la visite en vitant lutili