Wordpress Drupal Prestashop Typo3 ez Publish... CMS Content Management System
1. La gestion de contenus 2. Présentation des outils 3. Utiliser des architectures Web 4. Mettre en place les outils 5. Apprendre les concepts fondamentaux 6. Utiliser les flux de travaux (Workflow) 7. Penser la restitution 8. Etude de cas : Wordpress... 9. Le TD Wordpress CMS Content Management System
1. La gestion de contenus CMS : Une définition Distinguer les types d outils Pourquoi les CMS?
CMS : Définition Un système de gestion de contenu est une famille de logiciels destinés à la conception et à la mise à jour dynamique de sites Web.
Les types d outils Maturité des outils... ERP ou PGI : Progiciel de gestion intégré GED : Gestion documentaire CMS : Gestion de contenus - WCM : Web Content Management - ECM : Enterprise Content Management (gestion de la connaissance) BLOG : Publication Galeries : Diffusion Services Web : Utilisation (Gmail)
Pourquoi les CMS? Les atouts ils permettent le travail collaboratif (Groupware) ils permettent les interactions (Commentaires) ils fournissent des chaînes de publication (Workflow) ils permettent de séparer la forme du contenu ils permettent de structurer les informations ils permettent de dématérialiser les documents...
2. Présentation des outils Choisir un CMS Quelques CMS CMS Open source : un logiciel libre
Choisir un CMS Très large choix... Wordpress, Joomla!, Drupal, Prestashop, ez Publish... Les fonctionnalités Capacité de gestion, droits utilisateurs, workflow... http://www.framasoft.net/rubrique168.html
Quelques CMS... SPIP Projet Français CMS complet Gestion de plugins http://www.spip.net
Quelques CMS... Wordpress Architecture classique Elegant Gestion de plugins Thèmes http://wordpress.org/
Quelques CMS... Drupal Grand nombre de modules Espace utilisateur Modification possible de la structure http://www.drupal.org
Quelques CMS... Typo3 Le produit est sorti fin 2000 Très riche en fonctionnalités Gestion de droits et workflow http://typo3.fr/
Quelques CMS... ez Publish Configuration poussée Gestion d'extensions Création de modèle pour la publication Gestion des versions et langues http://ez.no/fr/
Quelques CMS... Jahia Basé sur JAVA Produit commercial Portail plutôt que CMS http://www.jahia.org/cms
Quelques CMS... Prestashop E-commerce Gestion de modules Gestion de thèmes http://www.prestashop.com/
OpenSource Logiciels libre... Pas toujours gratuit! Code accessible et modifiable Licences Creative Commons
OpenSource Rentabilité «Tant qu une communauté s y intéresse, le produit vivra.» Pérénité «La libre disposition des sources, est un gage fondamental de pérennité.»
3. Architecture Web Simple et pratique Séparer le contenu de la présentation Gestion des droits et des accès Edition simplifiée
Architecture Web Simple et pratique... Pas d installations logiciels Mises à jour simplifiées (côté serveur) Standardisation des affichages Maintenances simple Accès multiples Sécurité
Architecture Web Séparer le contenu de la présentation Contenu stocké dans une base de données Présentation liée à un thème
Architecture Web Gestion des droits et des accès Différents types d utilisateurs (login/password) Différents droits sur le contenu
Architecture Web Edition simplifiée Interface Web Navigateur Web normalisé Attention aux problèmes d interprétation du code HTML par les navigateurs http://fr.wikipedia.org/wiki/acid3
4. Mise en place Utiliser le modèle Client/Serveur Utiliser Apache/PHP/MySQL Virtualiser des serveurs
Client / Serveur Modèle Web Requête http://serveur/page.html Client Serveur Réponse html / Page Web
Normalisation du code HTML / XHTML et CSS Normalisations du W3C HTML = Langage de Mise en Forme utilisant des Balises - HyperText Makup Language XHTML = Version du HTML utilisant la syntaxe du XML XML = Langage qui permet de stocker des données - extended Markup Language CSS = Prise en charge des styles - Cascading Style Sheets
Client / Serveur Les technologies de programmation Client Serveur PHP Javascript AJAX Flash PHP ASP (Microsoft) JSP (Java)
Client / Serveur La base de données MySQL Client Serveur PHP Serveur de base de données MySQL
Apache / PHP/ MySQL Les outils : Apache -> Serveur Web PHP -> Programmation MySQL -> Base de données Le package : EasyPHP (http://easyphp.org) - Outils de test! Pas de mise en production avec cette solution. Voir Linux.
Virtualisation Penser Services et non pas Machine Utiliser les processeurs multi-cores pour gérer plusieurs systèmes L ordinateur devient un Service Modifications rapides (taille de disque dur, mémoire allouée,...)
5. Concepts fondamentaux Séparer le fond de la forme Structure les contenus (données/métadonnées) Organiser les contenus
La forme et le fond Pourquoi séparer? Modifier le graphisme indépendamment du contenu Créer du contenu sans avoir à gérer la présentation Organiser le fond selon les besoins Etendre les moyens de consultations (RSS, iphone,...) Limites? Présentation précise Styles prédéfinis
Structure les contenus Contenus élémentaires structurés Titre, Chapeau, Extrait, Auteur... Sémantique : donner du sens. Donnée = Donnée publiée (titre de l'article, du document...) Métadonnées = Donnée non publiée (Auteur, date de création...) " Un fichier (pièce jointe) reste opaque pour le système "
Organiser les contenus Plusieurs méthodes d'organisation : Catégories Mots clés Identificateurs...
6. Utiliser les Workflow Workflow : une définition Le workflow de validation (gestion des rôles) Le workflow sur le cycle de vie (des contenus) Le workflow des commentaires Le workflow de versions La gestion des rôles des utilisateurs
Workflow : Définition Un workflow (anglicisme) est : une suite de tâches, une suite d'opérations, le passage d'une étape à une autre «le workflow sert à décrire le circuit de validation, les tâches à répartir entre les différents acteurs d'un processus.» «Un bon workflow doit gérer les absences et les escalades.»
Workflow de validation Séparer les étapes, organiser le travail. Brouillon (attente de relecture) Validations Publication Rôle de rédaction seulement. Rôle de validation et d'organisation des contenus. Rôle de gestion des rendus dans le site.
Workflow sur le cycle de vie Gérer le cycle de vie des contenus. Etats Visiblité Publication Brouillon, Proposé, Validé, Publié, Archivé... Protéger un article, Faire en sorte qu il reste en tête de page... Programmer la publication à une date précise, Masquer après un délais...
Workflow des commentaires Prendre en compte les commentaires. Autorisations Contrôles Réponses Ouverts, Fermés, Inscription... Modérateurs, CAPTCHA, Liste noire... Suivi...
Workflow de versions Prendre en compte les versions Document n-2 Document n-1 Document publié Document n+1 Document n+2
La gestion des rôles Distinctions pour gérer des utilisateurs Contributeur - Produit des contenus - N est pas professionnel du Web - Son processus doit être simple Rédacteur en chef - Valide les contenus (éditorial) - défini et gère les rubriques Administrateur - Gère les utilisateurs et les droits Webmaster - Organise le site (publication) - Définit le graphisme
La gestion des rôles Distinctions sur les habilitations Appliquer sur les processus de travail - Proposer, valider, publier - Organiser le site (créer une rubrique) - Modifier des modèles (gabarits) - Créer des utilisateurs Appliquer sur un zone (périmètre) de contenu - Rubrique, sous rubrique, section...
La gestion des rôles Administrateur Editeur Auteur Contributeur Abonné Gestion des droits utilisateurs 1 Gestion des options 1 Importation de base de données 1 Importation de base de données 1 Création de catégories 1 1 Gestion de pages 1 1 Gestion de tous les commentaires 1 1 Gestion des articles 1 1 Gestion des catégories 1 1 Gestion des extensions (plugin) 1 1 Gestion des liens 1 1 Gestion des thèmes 1 1 Modération 1 1 Publication de pages 1 1 Création de pages 1 1 1 Gestion de commentaires 1 1 1 Publication d articles 1 1 1 Chargement de fichiers 1 1 1 1 Création d articles 1 1 1 1 Rédaction de commentaires 1 1 1 1 1 Distinctions sur les habilitation
7. Restitutions Restitution Modèles et gabarits Multi-canal Droits utilisateurs Moteur de recherche
Restitution Défini par le contributeur Contenu déposé explicitement sur une page Défini par règles Association de contenus - Exemple : Une page qui rassemble les derniers contenus
Modèles et gabarits Vocabulaire Template, gabarits, masques,... Le gabarit gère... Les éléments (du document) qui seront restitués La présentation Les intéractions javascript
Modèles et gabarits Pas de standardisation! Chaque CMS possède son propre langage. Chaque CMS possède sont propre système de boucles et de conditions C est de la programmation. Apprendre le langage du CMS - Ex. SPIP = Squelettes, Boucles,...
Modèles et gabarits Utilisation des CSS Cascading StyleSheet
Multi-canal Différents canaux de diffusion Flux RSS Version Mobile,... Sorties PDF... «Ce doit être une affaire de gabarits.»
Droits d accès en lecture Prendre en compte les droits des Internautes Zone sécurisée, Pages modifiées en fonction des utilisateurs - Personnalisation des contenus
Moteur de recherche Intégré au CSM Essentiel! Simple d utilisation Intégré au CMS Moteur libre : - Lucène (java) - Solr (application web) - Zend Framework (php) «Ce doit être une affaire de gabarits.»
8. Etude de cas : Wordpress Télécharger Wordpress Placer les fichiers de Wordpress sur le serveur Web Créer une base de donnée vide Lancer l'installation de Wordpress Configurer le site
Télécharger Wordpress En francais... http://fr.wordpress.org/ Décompresser le ZIP Extraire les fichiers...
Placer les fichiers sur le serveur Déplacer ou copier le dossier sur le serveur Dans le répertoire 'www' du serveur Web
Créer une base de données Avec phpmyadmin : Onglet 'Bases de données' Nommer la base 'wordpress'
Installer Wordpress Créer le fichier de configuration (navigateur) http://127.0.0.1/wordpress/ Renseigner les informations sur la bdd Nom de la base : td_wordpress Identifiant : root Mot de passe : (vide) Hôte : 127.0.0.1 Préfixe : wp_
Configurer le site Renseigner les champs Titre, Utilisateur (admin) Mot de passe Important Pas d'indexation par les moteurs de recherche.
9. Le TD Wordpress Installer le plugin du TD Wordpress Activer le plugin et installer le TD Wordpress Administrer et utiliser le site
Le plugin 'td_wordpress' Récupérer le plugin 'td_wordpress' http://dl.lcprod.net/iut/cms%20wordpress/documents/ plugin_td_wordpress.zip Décompresser le ZIP Extraire les fichiers... Déplacer ou copier le dossier du plugin Dans le répertoire 'wp-content\plugins\' du Wordpress
Activer le plugin A partir de l interface d administration Section Extensions Activer le plugin «Installation du TD Wordpress» Section Réglages -> Menu TD Wordpress Installer le TD Wordpress!
Administrer et utiliser le site Accès à l'administration http://127.0.0.1/wordpress/wp-login.php Identifiant : admin Mot de passe : 1utm@t1c Le mot de passe est 'iutmatic' avec des '1' pour les 'i' et '@' pour le 'a' Accès au site http://127.0.0.1/wordpress/
Vous êtes libres : de reproduire, distribuer et communiquer cette création au public Selon les conditions suivantes : Paternité. Vous devez citer le nom de l'auteur original de la manière indiquée par l'auteur de l'oeuvre ou le titulaire des droits qui vous confère cette autorisation (mais pas d'une manière qui suggérerait qu'ils vous soutiennent ou approuvent votre utilisation de l'oeuvre). Pas d'utilisation Commerciale. Vous n'avez pas le droit d'utiliser cette création à des fins commerciales. Pas de Modification. Vous n'avez pas le droit de modifier, de transformer ou d'adapter cette création. http://creativecommons.org/licenses/by-nc-nd/3.0/deed.fr Licence Creative Commons