Upload
adnaneadnane
View
883
Download
4
Embed Size (px)
DESCRIPTION
Ce rapport est réalisé dans le cadre du projet de fin d'étude du 1er de cycle Option Ingénierie des logicielset Multimédias de à Institut supérieur du Génie Appliqué.La première partie de ce rapport présente l’objective et le cahier de charge détaillée de notre projet, Ladeuxième partie décrit l’étude comparative effectuée sur les différents systèmes de gestion de contenu. Latroisième partie présente le site réalisé avec le CMS choisi. Suivie par une conclusion.
Citation preview
Institut supérieur du Génie Appliqué
1
Réalisé par :
� Mr AL ECHCHEIKH EL ALAOUI Adnane
� Mr JADDAD Alaa Eddine � Mr SALIM Adil
Encadré par :
� Mr EL MEZOUARI Noureddine
� Mr ZAOUDI Mohammed
Année universitaire 2009/2010
Institut supérieur du Génie Appliqué
2
Institut supérieur du Génie Appliqué
3
� Remerciement
On tient à remercier dans un premier temps l’équipe pédagogique de l’IGA et les responsables de la formation génie logiciels et multimédias pour avoir assuré la partie théorique de celle-ci.
On tient à remercier également nos encadrants Mr EL MEZOUARI Noureddine et Mr ZAOUDI Mohammed pour l’aide et les conseils concernant les missions évoquées dans ce rapport à témoigner toute notre reconnaissance aux personnes cités pour l’expérience enrichissante et pleine d’intérêt qu'elles nous ont fait vivre durant cette période du projet.
Institut supérieur du Génie Appliqué
4
Sommaire
I. Introduction .............................................................................................................................................................. 5
� Objectifs du projet ................................................................................................................................................ 5
II. Cahier de charge ....................................................................................................................................................... 6
III. Solutions de Gestion de Contenu ......................................................................................................................... 8
� Définition d’un CMS .............................................................................................................................................. 8
� Principes et technologies (Front Office/ Back Office) ....................................................................................... 8
� Domaines d’application ...................................................................................................................................... 10
� Fonctionnalités des CMS ..................................................................................................................................... 11
� Avantages et bénéfices d’un CMS ....................................................................................................................... 13
IV. Choix d’une solution ........................................................................................................................................... 15
� Logiciels Libres .................................................................................................................................................... 15
� Etat de l’offre ...................................................................................................................................................... 16
� Critères de choix ................................................................................................................................................. 21
V. Étude comparative .................................................................................................................................................. 24
VI. CMS choisi ........................................................................................................................................................... 27
� Qu'est ce que Joomla! ? ...................................................................................................................................... 27
� La terminologie de Joomla! ................................................................................................................................ 28
� Les extensions ..................................................................................................................................................... 29
� Base de données de Joomla ! .............................................................................................................................. 31
� Modules et composants ...................................................................................................................................... 32
VII. Présentation de site ............................................................................................................................................ 34
� Conception des maquettes ................................................................................................................................. 34
� Présentation de la page d accueil ....................................................................................................................... 34
� Présentation des modules les plus importants ................................................................................................... 34
VIII. Les avantages de site : ........................................................................................................................................ 38
IX. Bibliographie ....................................................................................................................................................... 39
X. Conclusion ............................................................................................................................................................... 39
Institut supérieur du Génie Appliqué
5
I. Introduction
Ce rapport est réalisé dans le cadre du projet de fin d'étude du 1er de cycle Option Ingénierie des logiciels et Multimédias de à Institut supérieur du Génie Appliqué.
La première partie de ce rapport présente l’objective et le cahier de charge détaillée de notre projet, La deuxième partie décrit l’étude comparative effectuée sur les différents systèmes de gestion de contenu. La troisième partie présente le site réalisé avec le CMS choisi. Suivie par une conclusion.
� Objectifs du projet
Le groupe IGA à un nouveau site web qui représente en détaille le groupe, c’est le portail à l’extérieur donc un site Géré par l’administration pour assure tous les informations sur l’école d’ingénierie, l’école de management et les actualités et les démarches de l’inscription.
C’est de la vient l'idée de crée un site web pour les étudiants, un site qui doit en effet :
� Donner une visibilité des activités parascolaire et plus particulièrement les activités des étudiants. � Un espace de communication interne entre étudiant- étudiant et étudiant-école � Un espace de partage de tous les ressources interne de l’IGA
Pour réaliser ce site on va se baser sur un système de gestion de contenu choisi après une étude comparative très approfondie.
Institut supérieur du Génie Appliqué
6
II. Cahier de charge
Dans le cadre du projet tutoriel nous somme amené à réaliser site collaboratif on se basant sur une étude comparative et la mise en place d'un CMS
L’un des principaux objectif a atteindre par l’utilisation du CMS dans notre site est de facilité l’ accès a l’information aux visiteurs, d’où l’importance du texte de présentation et des images.
Deuxième objectif tout aussi important, la communication, établir une communication interactive claire et concis.
Troisième objectif plut important, il faut donner la possibilité aux étudiants de s’exprimer et de participer au développement de leur établissement.
Le dernier objectif et non pas le moindre, c’est d’établir un site non couteux dans la totalité du projet et la sécurité des informations donné.
L’ensemble des objectifs cités vont être réalisé par la création des rubriques suivantes :
� Public visé (cible)
Le site s’adresse à trois publics : les étudiants de toutes les écoles de L’ IGA, les formateurs et les
futurs étudiants de l’IGA
� Spécification technique
On nous a été demandé de choisir un style de menu professionnel
Adopté le site à la norme w3c.
Établir une navigation simple et intuitive.
Institut supérieur du Génie Appliqué
7
Des couleurs qui respect le public visé
C’est pour cela qu’on a dû prendre soin de mettre en œuvre toute les connaissances que nous savent, et avec l’aide de nous encadrent tout aux long du parcours de la réalisation de ce projet de fin de formation.
� Présentation:
La présentation devrait être claire et compréhensible par toute sorte d’utilisateur, et ceci se traduit par la similitude du site à la fois. Pour permettre aux visiteurs de cibler son information plus facilement et de bénéficier d’un gain de temps.
� Maintenance:
Mise à jour des pages d’une façon quotidienne par l’administrateur a fin de donnée toute les nouveautés, que ce soit des annonces ou toute sorte de chose qui concerne la vie quotidienne qui concerne les étudiants inscrivent dans l’établissement.
� Planification du projet
Pour réaliser le projet dans des conditions méthodologique .on a décidé de faire une planification on se basant sur le digramme de Gantt
Voilà le digramme de Gantt :
Institut supérieur du Génie Appliqué
8
III. Solutions de Gestion de Contenu
� Définition d’un CMS
Un système de gestion de contenu ou SGC ((en) Content Management System ou CMS) est une famille de logiciels destinés à la conception et à la mise à jour dynamique de site web ou d'application multimédia. Ils partagent les fonctionnalités suivantes :
� Ils permettent à plusieurs individus de travailler sur un même document ;
� Ils fournissent une chaîne de publication (workflow) offrant par exemple la possibilité de mettre en ligne le contenu des documents ;
� Ils permettent de séparer les opérations de gestion de la forme et du contenu ;
� Ils permettent de structurer le contenu (utilisation de FAQ, de documents, de blogs, de forums de discussion, etc.)
� Certains SGC incluent la gestion de versions.
Les SGC ne doivent pas être confondus avec les systèmes de Gestion électronique de documents (GED). Ceux-ci permettent de réaliser la gestion de contenu dans l'entreprise. On parle en anglais d'ECM, soit la gestion de contenu d'entreprise littéralement. Ils ne se limitent donc pas à fournir en contenu un site web ou une seule application multimédia.
� Principes et technologies (Front Office/ Back Office)
� Front Office
Le terme front office est un terme d'architecture logicielle. Il désigne la partie qui prend en charge l'interface d'une application, par opposition au back office qui lui regroupe la partie gestion
On retrouve typiquement le front office dans les sites web commerciaux qui permettent de commander en ligne. Dans ce cas, le front office correspond à la partie hypertexte (web) de l'application, donc ce qui est visible par le consommateur. Elle lui permet d'interagir avec le reste du site,
� Back Office
Le back office est une partie d'un site Web ou d'un système informatique .Elle concerne la partie qui permet d'administrer et de gérer le site. On pourra retrouver comme service par exemple :
Modifications de paramètres ; Administration d'un forum ; Gestion des utilisateurs ;
Institut supérieur du Génie Appliqué
9
CMS � Front Office
� Back Office
Partie « publique » du site Internet géré par le CMS
Le contenu est mis en page et présenté au visiteur du site
Partie « privée » nécessitant une authentification
Interface permettant la gestion du contenu par les utilisateurs autorisés
Utilisation d'interfaces Web
L’accès au Back Office se fait via un navigateur Internet classique et la gestion du contenu se fait à l’aide de formulaires Web .Ces formulaires une fois validés sont traités par le serveur qui enregistre et organise le contenu en conséquence
Séparation contenu/présentation
Le contenu est stocké dans une base de données mais la structure et la présentation sont définies dans des fichiers physiques de type : (modèles, templates, gabarits, squelettes…)
Institut supérieur du Génie Appliqué
10
Lors de la consultation d’une page, le CMS intègre le contenu dans le modèle de page et affiche le résultat au visiteur et le système de mise en cache permet de ne pas calculer la page à chaque affichage
Figure : fonctionement de CMS,
� Domaines d’application
On trouve les CMS dans plusieurs Domaines d’application : Domaines d’application Exemple
Sites i nstitutionnels
o Entreprises, administrations, associations
o Etablissent une relation avec le public
o Ex: URFIST de Bretagne (Drupal)
Sites éditoriaux
o Sources d’information régulière
o Journaux en ligne, Blogs…
o Ex : Le Monde Diplomatique (SPIP)
� Communautés e n ligne
o Centre d’intérêt commun
o Echange, diffusion du savoir
o Portail, forum, E-learning..
o Ex: Virusphoto.com (vBulletin)
� Sites catalogue/marchand
o Présentation d’une gamme de services/produits
o Commande et paiement en ligne
o Gestion des stocks, des expéditions
Institut supérieur du Génie Appliqué
11
o Ex: Philibertnet.com (osCommerce)
� Intranet / Extranet
o Echanges au sein d’une organisation : travail collaboratif
o Mise à disposition d’un espace réservé aux partenaires
o Groupware, Gestion de projet…
� Bases de connaissance
o Permettre aux utilisateurs de partager librement leurs connaissances
o Ex : Wikipedia (MediaWiki)
� Fonctionnalités des CMS
1. Fonctions d’édition simplifiée
� Sans connaissance du HTML, l’utilisateur peut mettre en page le contenu avec deux mécanismes :
� Fonctions identiques à un traitement de texte : éditeur « WYSIWYG »
� Utilisation de balises simplifiées, visant à mettre le contenu en forme
� Il peut insérer liens, médias et documents téléchargeables de manière très intuitive
2. Gestion des utilisateurs
La Gestion de la liste des utilisateurs qui peuvent intervenir sur le CMS et Chaque utilisateur dispose de droits différents selon le rôle qui lui est attribué .Ces droits concernent des utilisateurs ou des groupes d’utilisateurs et leur permettent d'éditer, de mettre à jour, de valider et de publier le contenu et aussi d'intervenir sur l'organisation du contenu, les rôles des autres utilisateurs
3. Chaîne de validation (Workflow)
On appelle "WorkFlow " (traduisez littéralement "flux de travail") la modélisation et la gestion informatique de l'ensemble des tâches à accomplir et des différents acteurs impliqué dans la réalisation d'un processus métier (aussi appelé processus opérationnel). Le terme de Workflow pourrait donc être traduit en français par Gestion électronique des processus métier. donc Un « workflow » décrit le circuit éditorial des documents qui gère les tâches que doivent accomplir les différents intervenants selon les rôles qui leur ont été impartis :
� Le rédacteur écrit un article
� Le rédacteur en chef valide l’article
� L’éditeur décide de le publier
Institut supérieur du Génie Appliqué
12
Figure : WorkFlow,
4. Contrôle des versions
Chaque modification de contenu est enregistrée
Elles ne sont donc pas destructrices
L’historique des modifications facilite le travail collaboratif
Possibilité de rétablir une version antérieure de la page
Exemple : page « historique » de Wikipedia
5. Support des métadonnées
Métadonnées : ensemble structuré d'informations décrivant une ressource pour un article :
Titre, Auteur, Date
Catégorie, Mot-clé
Valorise le contenu en augmentant sa pertinence
Permet de classer le contenu : ordre chronologique, par auteur
Etablit des relations entre les différents contenus
6. Indexation et recherche
Indexation automatique des ressources et de leurs métadonnées
Intégration automatique d’un moteur de recherche sur le site internet
Quel que soit le volume de données, l’indexation permet une optimisation de la recherche de l’information
7. Intégration
Intégration de contenus externes au site RSS, WebServices, bases de données relationnelles, système de fichiers…
Institut supérieur du Génie Appliqué
13
Mise à disposition des contenus pour une utilisation externe
Branchement à un annuaire externe pour les contributeurs ou les visiteurs (LDAP)
8. Statistiques
Informations pertinentes sur la fréquentation du site Nombre de visites, article le plus lu, profils des visiteurs
Interfaçage avec un système de statistique extérieur
Xiti, Google Analytics, Weborama…
9. Extensibilité
Ajout de fonctionnalités en installant des modules
Bibliothèques de modules accessibles en ligne
Pour des besoins spécifiques, possibilité de développer ses propres modules
� Avantages et bénéfices d’un CMS
1. Réduction des coûts
Aucune licence à acquérir pour la plupart des CMS
Aucun intermédiaire pour la mise à jour du contenu
Maintenance allégée
Beaucoup de temps gagné
2. Réduction des délais de publication
L’interface de gestion est accessible à partir de n’importe quel poste relié à Internet
L’utilisateur ne se préoccupe que du contenu
Aucun intermédiaire technique pour la mise en ligne du contenu
3. Valorisation du contenu
Contenu plus « récent »
Indépendance du contenu vis-à-vis de la présentation
Diffusion sur de multiples supports
Assurance de l’intégrité des ressources
Contenu = générateur de trafic
4. Travail collaboratif
Moins de « dilution » de l’information
Institut supérieur du Génie Appliqué
14
Travail plus efficace : aucun conflit lié aux interactions
Le workflow assure la qualité du contenu
5. Décentralisation de la gestion de l’information
Chaque contributeur peut travailler où il veut et quand il veut
Un simple accès à Internet suffit pour gérer le contenu du site internet
6. Contrôle de l'accès à l'information
L’accès à l’information peut être conditionnée et limitée
L’historique des versions permet de connaître l’auteur de modifications
Les statistiques donnent des informations pertinentes sur la consultation du contenu
7. Sécurité
Les CMS ont des dispositifs permettant de résister aux attaques
La rigueur d’utilisation qu’imposent les CMS réduit les risques d’erreurs humaines
Les droits protègent les ressources
Fonctions de sauvegarde intégrées
Correctifs de sécurités régulièrement diffusés
Institut supérieur du Génie Appliqué
15
IV. Choix d’une solution
� Logiciels Libres
Définition des Logiciels Libres :
Licence de logiciel qui respecte 4 libertés précisément établies : La Liberté d'exécuter le logiciel, Liberté d'étudier le fonctionnement du logiciel, Liberté de redistribuer des copies du logiciel et la Liberté d'améliorer le logiciel et de publier ses améliorations
Avantages des Logiciels Libres:
Ce n’a pas seulement le coût de mise en œuvre mais aussi l’accès aux codes sources facilite le développement spécifique.
Sécurité : les failles sont décelées facilement, et corrigées rapidement
Evolutivité : les communautés permettent de faire avancer les projets
Support communautaire non contractuel mais fort car animé par la passion
Possibilité de compléter par un support professionnel
Institut supérieur du Génie Appliqué
16
� Etat de l’offre
On trouve généralement les CMS : SPIP, Typo3, Joomla, WordPress, eZ Publish et Drupal.
Etat de l’offre – SPIP
� « Système de Publication pour l’Internet Partagé » � Projet français � PHP, MySQL � Simplicité à tous les niveaux � Système de cache performant � Communauté très active � Plusieurs milliers de références � Traduit en 20 langues � Pas d’éditeur WYSIWYG � Raccourcis typographiques un peu abscons � Workflow limité : impossible de modifier le circuit de validation � Modèle de donnée figé
Figure : l’administration de SPIP
Institut supérieur du Génie Appliqué
17
Etat de l’offre – Typo3
� Projet danois � PHP, MySQL � Fonctionnalités prêtes à l’emploi très riches � Gestion des droits évoluée et pointue � Moteur de Template puissant � Optimisation automatique des images � Multi-sites � Flexibilité importante grâce aux modules
+ de 2000 modules � Références importantes :
Dassault, CNIL, Groupe PSA… � Temps d’investissement important � Back Office déroutant
Figure : l’administration de Typo3
Institut supérieur du Génie Appliqué
18
Etat de l’offre – Joomla
� Issu du projet « Mambo » � PHP, MySQL � 2nd meilleur CMS 2008 � Convivialité du Back Office � Multilingue � Flexibilité important
plus de 3000 modules � Equipe de développement importante
27 développeurs sur les 12 derniers mois � Impossible de gérer plusieurs structures de contenu � Attribution des droits et workflow limitée � Non-respect des standards du W3C � Activité du développement en perte de vitesse
Figure : l’administration de Joomla
Institut supérieur du Génie Appliqué
19
Etat de l’offre – WordPress
� Plateforme de publication personnelle � PHP, MySQL � Installation très simple � Légèreté, esthétisme � Extensibilité importante
plus de 3 000 modules � Respect total des standards du Web � Nombre de thèmes important � Protection contre le spam � Protection de contenu par mot de passe � Gestion globale figée � Pas de multilinguisme � Peu de commentaires dans les codes sources
Figure : l’administration de WordPress
Institut supérieur du Génie Appliqué
20
Etat de l’offre – Drupal
� PHP, MySQL/PostGreSQL � Maturité : 7 ans d’ancienneté � Meilleur CMS 2008 � Communauté très active � Forte extensibilité due à son architecture en modules � Contenu totalement indexé � Interface unique Front Office / Back Office � Formats d’édition divers � Classification puissantetaxonomie, vocabulaire � Export des contenus en XML � Documentation importante � Courbe d’apprentissage longue � Difficile à prendre en main � Mises à jour compliquées en cas de personnalisation
Figure : l’administration de Drupal
Institut supérieur du Génie Appliqué
21
� Critères de choix
Il existe plus de de 800 solutions dans le monde Open Source et bien sûr Il n’y a pas de CMS idéal : cas choix d’un CMS dépend de la nature du projet
Il est impératif de réaliser un cahier des charges sur les besoins réels en se posant les bonnes questions
Exemples de questions :
Quels rôles pour les acteurs ?
Quels types de contenus vont être stockés ?
Nécessité d’externaliser les données ?
Besoins de métadonnées ?
Quels sont les workflows nécessaires ?
1. Lang ue du CMS Les CMS peuvent utiliser du vocabulaire technique qui n’est pas forcément évident au début
Inutile d’ajouter de la complexité à la tâche
Tous les CMS sérieux proposer une traduction française
Certains CMS gèrent le multilinguisme du Front Office
2. Documentation
Existe-t-il une documentation officielle pour le CMS ?
Peut-on facilement trouver des exemples de mise en œuvre sur Internet ?
Une formation est-elle facilement accessible ?
Des livres existent-ils en librairie spécialisée ?
3. Communauté
Existe-t-il des sites communautaires dédiés au CMS ? Exemple : www.joomlafrance.org
Estimer la taille de la communauté et son activité grâce aux messages des forums
Ne pas hésiter à poser ses questions aux membres de la communauté
4. Fonctionnalités
Examiner les fonctionnalités du CMS et les comparer au cahier des charges établi
Si le CMS permet l’installation de modules, parcourir la bibliothèque de module pour se faire une idée des possibilités de
Institut supérieur du Génie Appliqué
22
fonctionnalités supplémentaires
5. Ergonomie, accessibilité
Le CMS est-il intuitif ?
Quel est sa courbe d’apprentissage ?
Une formation est-elle nécessaire pour la prise en main ?
Un éditeur WYSIWYG est-il disponible ?
Faire un essai de l’interface de gestion pour se faire une première idée
6. Flexibilité
Quels sont les possibilités d’adapter le CMS à ses besoins ? Groupes, droits, workflow…
Le développement de module est-il possible ?
Existe-t-il une documentation claire sur l’aspect technique du CMS ?
7. Les technologies utilisées
PHP / MySQL (le plus populaire), Java, Python
Unix, Windows
Hébergement mutualisé ou serveur dédié
Choix de la base de données : MySQL, Posgres, Oracle, ...
Cela aura des conséquences sur le choix de l'hébergement et son coût.
8. Hébergement
Tous les hébergeurs ne conviennent pas !
Suivant la solution choisie et la technologie utilisée, vous pouvez déterminer une offre d'hébergement
Attention aux critères suivants :
Performance du serveur et de la base de données Configuration spécifique (safe mode) Droits d'accès aux répertoires Support technique L'espace disponible
9. Popularité du CMS
Combien de sites utilisent ce CMS ?
Quels sites importants utilisent ce CMS ?
Le Monde Diplomatique : SPIP
Greenpeace : Drupal
Université d’Harvard : Joomla
Institut supérieur du Génie Appliqué
23
Existe-t-il des exemples de sites qui se rapprochent de son propre projet ?
10. Evolution du CMS
Evaluer le chemin parcouru depuis la première version du CMS
Examiner les évolutions annoncées pour les prochaines versions
Certains éditeurs proposent une feuille de route (roadmap)
11. Sécurité
Les alertes de sécurité sont-elle courantes ?
Les correctifs sont-ils rapidement mis à disposition ?
Seront-ils facilement applicables dans le cadre de l’hébergement ?
Quels sont les précautions à prendre lors des changements majeurs de version ?
Déterminer la politique de sécurité qu’il sera souhaitable d’adopter
12. Performances
Présence d’un système de cache évitant de calculer systématiquement les pages
Indexation du contenu pour une recherche plus rapide
Ne pas confondre performance du CMS et performance de l’hébergement ou du contenu
13. Essai du CMS Trouver sur le site officiel du CMS un lien vers une démonstration du Back Office
Faire un essai en local en installant un serveur web sur son ordinateur perso
Evaluer ainsi les difficultés qui pourraient survenir lors de la mise en œuvre du projet
Institut supérieur du Génie Appliqué
24
V. Étude comparative Cette comparaison n'a pas pour vocation de déterminer quel est le bon CMS, car le choix d'un tel outil dépend d'un certain nombre de critères, notamment ceux des besoins et des moyens à disposition. Cependant, on espère avec cette petite table d’analyse donner les clés de recherche et de comparaison suffisantes pour permettre de comprendre les différences entre tous ces outils et d'ébaucher les bonnes questions à se poser et aussi fournir un ensemble de références utiles dans la réflexion menant au choix d'un CMS.On va se base dans la comparions sur des tables suivant de site (CMSMatrix.org) :
Institut supérieur du Génie Appliqué
25
Institut supérieur du Génie Appliqué
26
Institut supérieur du Génie Appliqué
27
Figure : tables comparative des CMS
VI. CMS choisi
� Qu'est ce que Joomla! ?
Joomla! est un outil de gestion de contenu (en anglais, CMS, pour Content Management system) Open Source sous licence GNU/GPL créé par une équipe internationale de développeurs récompensée à maintes reprises.
Joomla! est chapeauté par Open Source Matters , Inc., organisation à but non lucratif basée aux Etats-Unis dont la mission est de fournir une structure légale et financière au projet. Les statuts de l'organisation sont consultables sur http://www.opensourcematters.org.
� Combien ça coûte ?
En tant qu’utilisateur final (particulier, association ou entreprise commerciale) il ne vous en coûtera rien d’utiliser Joomla! et/ou d'en modifier le noyau. Joomla! est un logiciel libre sous licence GNU/GPL. Vous trouverez plus de détails sur les règles d’utilisation à l’adresse suivante :
http://www.gnu.org/licenses/gpl.html
� la communauté Joomla
On peut distinguer 5 catégories de joomlistes (joomlers ? joomladdicts ? …) :
Institut supérieur du Génie Appliqué
28
• La Core Team : équipe officielle des développeurs du noyau Joomla!. Elle se charge de maintenir et de faire évoluer Joomla!. La liste des membres est consultable sur le site officiel (http://www.joomla.org).
Autour de la Core Team sont organisés des groupes de travail dont les missions sont entre autres choses axées sur la sécurité, les performances, l'accessibilité…
• Les Translation Partners : équipes de traductions officielles organisées par langue, elles ont pour mission première de fournir une traduction de l'aide en ligne de Joomla!
Par extension, ce sont souvent ces mêmes équipes qui réalisent la traduction des libellés dans le logiciel, voire des extensions tierces.
Leurs travaux sont publiés sur un wiki à l’adresse suivante : http://wiki.joomla.fr/
• Les Développeurs d'extensions tierces : Joomla! intègre nativement un certain nombre d'extensions, volontairement limité pour ne pas surcharger le package d'installation. L'une des grandes forces du projet Joomla! c'est le nombre important d'extensions tierces mis à disposition par des développeurs, amateurs ou professionnels. Galeries d'images, forums, générateurs de formulaire, e-commerce, templates… l'éventail des extensions tierces vous permettra de vous tailler un site sur mesure !
• Les Portails communautaires : ces sites web n'ont rien d'officiel, ils sont le plus souvent animés par des passionnés de la première heure qui n'ont d'autre ambition que de " partager " en mettant à disposition des utilisateurs finaux toutes les ressources (forums, téléchargements d'extensions et de templates, news, base de connaissance…) pour mettre en oeuvre un site motorisé par Joomla!
• Les Utilisateurs finaux : webmasters amateurs ou professionnels, rédacteurs…, ben
là c'est vous, nous !
� La terminologie de Joomla!
Voici une liste des termes les plus fréquemment utilisés dans la planète Joomla!, qui vous aidera à mieux appréhender son fonctionnement:
• Article : un article est une unité de contenu. Il comprend généralement du texte, des images et des liens ; il a certaines caractéristiques comme un titre, un auteur, une date de publication et tout un tas de paramètres qui seront décrits plus loin.
Un article est placé dans une rubrique, elle-même fait partie d’une section. Mais il existe des articles non catégorisé – appelés articles statiques dans les précédentes versions de Joomla.
• Menu : c’est une liste d’éléments, disposés de façon verticale ou horizontale selon le module choisi pour l’afficher et sa configuration. L’appui sur un élément du menu provoque l’affichage d’une page avec ses modules et ses composants …
• Page d’accueil : c’est la première page que voit un visiteur lorsqu’il saisit le nom de votre site. • Administration : la partie administration – ou backend - est l’arrière-boutique de votre site ; l'interface
d’administration va permettre de créer et mettre à jour vos articles mais aussi de gérer tout votre site.
Institut supérieur du Génie Appliqué
29
• Site : La partie Site - ou frontend - c’est la boutique, ce que voient les visiteurs qui viennent sur votre site.
• Cache : pour rendre plus rapide l'affichage des pages de votre site, les éléments les plus souvent demandés (logos, images, page d'accueil) sont stockés dans un répertoire intermédiaire, encore appelé cache. Lorsqu'un utilisateur veut consulter une page comprenant un élément en cache, Joomla! n'a plus besoin d'aller le chercher dans la base de données ou un répertoire du site, il le prend directement dans le cache.
Le cache est mis à jour régulièrement mais si vous avez fait des mises à jour importantes de votre site, il vaut mieux nettoyer votre cache, c'est à dire supprimer tous les fichiers mis dans le cache, au travers de l’interface d'administration.
• Core team (CT): la Core Team est l'équipe de bénévoles en charge du développement du code source et de l'organisation générale du projet Joomla! Elle est à ce jour composée d'une quinzaine de membres (développeurs et anglophones pour l'essentiel).
• Editeur WYSIWYG : comme son nom l’indique, il s’agit d’un éditeur qui va permettre de rédiger et de mettre en forme du texte comme vous le feriez avec un traitement de
• Publier / dépublier : encore une notion importante à intégrer. Il s’agit de rendre visible ou pas sur le site un article, un lien dans un menu, un module entier, une section, une catégorie, un article. Pour un article, il est par ailleurs possible de définir un calendrier de publication, date à partir de laquelle ou jusqu’à laquelle un article sera publié.
� Les extensions
Joomla! est un outil de gestion de contenu assez sophistiqué qui s’appuient sur des extensions, c'est-à-dire des programmes complémentaires pour gérer la mise en forme ou ajouter des nouveaux services. Ces extensions sont classées en 4 catégories : les composants, les modules, les plugins et les templates. La version standard de Joomla! intègre un certain nombre d’extensions mais vous en trouverez quelques milliers sur le net pour personnaliser votre site !
• Composant : c’est une mini application intégrée à votre site Joomla, qui dispose de sa propre interface de configuration dans la console d’administration Joomla.
Ainsi à chaque fois qu’une page est chargée, Joomla fait appel à un composant pour générer le corps de la page ; de même, il existe un composant pour authentifier les utilisateurs … Les composants constituent la majeure partie de vos pages ! Les
composants de base sont fournis avec Joomla!. D’autres composants peuvent être facilement installés par la suite (forums, livre d’or, galerie d’images, gestionnaire de newsletter, gestionnaire de formulaires… et bien d’autres encore).
Exemple : com_content (gestion des contenus) et com_registration (enregistrement des utilisateurs)
• Module : pour faire simple, un module est un bloc que l’on trouvera généralement autour du corps de la page web, par exemple dans la colonne de gauche ou la colonne de droite de notre site. Ainsi le menu de gauche de votre site est placé dans un module ! De même que la bannière en haut de votre site, le bas de page ou le module d’identification …
Les modules sont souvent associés à des composants, comme par exemple le module qui affiche une photo aléatoire tiré d’une galerie d’images géré par un composant.
Institut supérieur du Génie Appliqué
30
• Plugin : ce sont des morceaux de code activés sur un évènement. L'exécution de n'importe quelle partie de Joomla, que ce soit le noyau, un module ou un composant, peut déclencher un évènement et alors les plugins associés à cet événement s’exécuteront.
Par exemple, le plugin de recherche content.searchbot est un script qui permet d’effectuer une recherche sur tout votre site.
Autre exemple, quand vous saisissez le texte d’un article, le plugin TinyMCE permettra de convertir le texte que vous saisissez en code HTML interprétable par votre navigateur : un évènement est l’appui sur une touche du clavier, l’action est la génération du code html adéquat.
• Template : un template gère toute la partie graphique de votre site : les couleurs des caractères et des fonds, la police des caractères, les cadres, les menus ... En changeant de template, vous changez le « look and feel » de votre site.
Il en existe des centaines, disponibles gratuitement sur des sites qui se sont spécialisés dans cette activité. Nous verrons plus loin comment installer et personnaliser un template. Le terme template est l'équivalent de skin, thème ou encore gabarit dans d'autres CMS. Les templates proposés par défaut avec Joomla! sont rhuk milkyway, beez, et JA Purity …
� Comment ça marche
Voici un petit schéma simplifié pour vous expliquer comment Joomla! Génère une page :
Figure : Comment Joomla! Génère une page .
Institut supérieur du Génie Appliqué
31
� Base de données de Joomla !
La base de données Joomla s’installe automatiquement lors de l’installation de Joomla sur le serveur web, le schéma suivant illustre tous les tables et les relations entre ses tables:
Institut supérieur du Génie Appliqué
32
� Modules et composants
Comment s’articulent ces différentes notions ? Nous allons vous l’expliquer au travers d’un exemple : la page d’accueil du site fourni par défaut avec Joomla!
Figure : la page d’accueil de Joomla
C’est un site basé sur le jeu d’exemples fourni avec le package Joomla! et réalisé avec le template rhuk milkyway.
Dans cet écran, le corps de la page commence avec le titre Welcome to the Front page et contient l’affichage de plusieurs articles en mode blog. Autour de ce corps de page, le
template définit plusieurs zones – ou positions - dans lesquelles vous allez pouvoir placer les modules que vous voulez :
En haut, la position top contient un module Newsflash qui affiche au hasard un article choisi parmi les nouvelles.
Institut supérieur du Génie Appliqué
33
En dessous la position user3 contient un module Top Menu (un module de type: mod_mainmenu) qui affiche un menu.
La position breadcrumb contient le module Breadcrumb qui affiche le Fil d’Ariane, un beau nom pour vous rappeler où vous êtes dans le site,
La position user4 contient un module Search qui vous permet de rechercher un article dans votre site ; si vous tapez Joomla! dans la fenêtre de saisie et que vous appuyez sur le bouton Recherche, c’est un plugin qui va analyser votre saisie et lancer la recherche, ou du moins activer le composant qui fait la recherche ...
A gauche, à la position left, vous voyez 4 modules : 3 modules pour afficher
En haut, la position user1 contient un module qui affiche les derniers articles publiés
A côté, la position user2 contient un module qui vous affiche la liste des articles les plus consulté
A droite, dans la position right, nous avons un module de sondage, un module qui affiche le nombre de visiteurs …
Et bien sûr, au milieu, vous trouvez le corps de la page, coincé entre les modules ; c’est le composant qui affiche une sélection d’articles en mode blog.
Cette page vous semble bien chargée ... c’est normal car les concepteurs du template ont voulu vous montrer toutes les potentialités offertes par leur template. Mais il suffit de dépublier certains modules pour libérer de la place et laisser ainsi plus de place au composant qui gère l’affichage des articles !
Ainsi, pour un site simple, j’ai fait les choix suivants :
Pas de module en position top, afin d’afficher une image plus grande en haut de la page,
Pas de module en position right, user1 et user2 …
Institut supérieur du Génie Appliqué
34
VII. Présentation de site
� Conception des maquettes
Notre portail dynamique (système de gestion de contenu) se compose de plusieurs modules qui gèrent l’ensemble de nous besoin d’une manière efficace.
Voilà la page d’accueil présenté d’une façon interactif dont le but de faciliter l’accès rapide au contenu
� Présentation de la page d accueil
Figure : la page d’accueil de site ,
� Présentation des modules les plus importants
� JomTube est un module d’hébergement de vidéos sur lequel les utilisateurs peuvent envoyer, visualiser et partager des séquences vidéo
La plupart des vidéos du site peuvent être visualisées par tous les internautes, tandis que seules les personnes inscrites peuvent envoyer des vidéos de façon illimitée. Les vidéos sont accessibles par catégorie et à l'aide de mots-clés (tags) et peuvent être importées sur un blog personnel. Tout internaute inscrit peut poster des commentaires et noter les vidéos en ligne, Lorsqu’une personne regarde une vidéo, d’autres vidéos en rapport avec celle visionnée lui sont proposées à l’écran à droite dans une barre défilante, et ce grâce au titre et aux étiquettes.
Institut supérieur du Génie Appliqué
35
L’interface de l’administaon de JomTube :
� Phoca Gallery n'est pas qu'un simple gestionnaire de galerie d'images. C'est aussi un composant unique créé pour Joomla 1.5 qui vous permet d'afficher bien sur des galeries photos mais aussi de proposer une pléiade de fonctionnalités qui vont de la rotation d'images, de slideshow en passant par les liens vers des produits de virtuemart et de lecture vidéo youtube. Vous pouvez aussi créer votre propre thème pour embellir une galerie (décoration de noël par
Institut supérieur du Génie Appliqué
36
exemple) ou télécharger à partir du site de Phoca qui dispose également de nombreux modules accessoires (ex. : affichage d'une image au hasard, etc...).
Figure : Galerie Photos
Et voila le resultat lorsqu on clique sur une image :
Institut supérieur du Génie Appliqué
37
� Kunena Le forum de site qui contient un espace virtuel qui permet de discuter « librement » sur plusieurs sujets divers. L'équipe de développement de Kunena propose aujourd'hui une version stable de son extension forum ! Celui-ci est un fork basé sur le défunt Fireboard abandonné par l'équipe de Best of Joomla. Il fonctionne désormais nativement sous joomla 1.5 avec les fonctionnalités que l'on connait déjà de la précédente édition. Dans les nouveautés nous avons : - une intégration dans les extensions Community builder et Joomsocial, - une compatibilité avec le composant multilingue joomfish
Figure : la page d’administration de forum
Institut supérieur du Génie Appliqué
38
Phoca Download est un gestionnaire de documents il va nous gérer le contenu des documents de cous, examens, TP et td.
VIII. Les avantages de site :
� C’est un site purement dynamique. (Tous les outils sont dynamiques).
� Il permet à plusieurs individus de travailler sur un même document.
� Il fournit une chaîne de publication (workflow) offrant par exemple la possibilité de mettre en ligne le contenu des documents.
� Il permet de structurer le contenu (utilisation de FAQ, de documents, de blogs, de forums de discussion, etc.).
� Édition de page simplifiée (Une interface WYSIWYG).
� Travail collaboratif (groupware).
� un haut niveau de sécurité.
� Gestion des droits d’utilisateurs.
� Connaissez mieux les visiteurs par des sondages.
� Communiquez mieux avec les étudiants par d'envoyer des lettres d'information périodiques.
Institut supérieur du Génie Appliqué
39
IX. Bibliographie CMSMatrix.org (tableau comparatif de plus de 500 CMS Open Source)
CMSReview.com comparaison des centaines CMS Open Source
OpenSourceCMS.com (tester le Back Office de centaines de CMS directement en ligne)
Projet-plume.org (les avis objectif sur les principaux CMS)
www.joomla.fr/ (téléchargement, documentation, information sur joomla)
X. Conclusion
Aujourd’hui, nous ne pouvons envisager de mettre sur pied un projet Web sérieux sans passer par une réflexion sur la pertinence d’utiliser ou non un CMS
Il existe un CMS Open Source adapté pour chaque projet et pour chaque profil d’utilisateur
Aucune interopérabilité entre les solutions : difficile de revenir en arrière
Devant l’importance du choix, il convient de cibler parfaitement ses besoins en adoptant une démarche rigoureuse
Le choix de Joomla était basé sur une étude comparative très approfondie.
En fin Ce projet nous a permis de perfectionner nos connaissances en WEB. Suite à notre avancé, dans ce projet nous avons fait face à plusieurs difficulté au niveau de documentation ce qui nous a poussé à faire des recherches pour concrétiser certaines idées et aussi a demandé l’aide de nos chers professeurs qui nous l’a accordé avec beaucoup de bonne volonté et a qui nous sommes très reconnaissant.
Par la suite nous aimerions cerner toutes les subtilités au développement web, pour améliorer et évolué nos connaissances, dans le but de devenir des ingénieurs compétant.