Différences entre les versions de « Cahier des charges de la migration Drupal6 »

De April MediaWiki
Aller à la navigationAller à la recherche
Ligne 48 : Ligne 48 :
 
|Citation du moment: affichage d'un article de type citation pris au hasard
 
|Citation du moment: affichage d'un article de type citation pris au hasard
 
|'''Obligatoire'''
 
|'''Obligatoire'''
|
+
|{{oui}}
|
+
|{{oui}}
 
|
 
|
 
|
 
|
Ligne 56 : Ligne 56 :
 
|Flux RSS: configurables à partir de l'interface d'administration ou du template (LinuxFR, AdL, Lolix, ...)  
 
|Flux RSS: configurables à partir de l'interface d'administration ou du template (LinuxFR, AdL, Lolix, ...)  
 
|'''Obligatoire'''
 
|'''Obligatoire'''
|
+
|{{oui}}
|
+
|{{oui}}
 
|
 
|
 
|
 
|
Ligne 64 : Ligne 64 :
 
|Bandeaux de campagnes: idéalement configurables à partir de l'interface de type citation pris au hasard
 
|Bandeaux de campagnes: idéalement configurables à partir de l'interface de type citation pris au hasard
 
|'''Obligatoire'''
 
|'''Obligatoire'''
|
+
|{{oui}}
|
+
|{{oui}}
 
|
 
|
 
|
 
|
Ligne 72 : Ligne 72 :
 
|Dernière vidéo: dernier article de type video, avec métadonnées affichées (chapo) + vignette  
 
|Dernière vidéo: dernier article de type video, avec métadonnées affichées (chapo) + vignette  
 
|'''Obligatoire'''
 
|'''Obligatoire'''
|
+
|{{oui}}
|
+
|{{oui}} (à confirmer pour les métadonnées)
 
|
 
|
 
|
 
|
Ligne 80 : Ligne 80 :
 
|Nuage de tags: chaque article doit pouvoir être taggué  
 
|Nuage de tags: chaque article doit pouvoir être taggué  
 
|'''Obligatoire'''
 
|'''Obligatoire'''
|
+
|{{oui}}
|
+
|{{oui}}
 
|
 
|
 
|
 
|
Ligne 88 : Ligne 88 :
 
|Revue de presse, actualités, communiqués: derniers articles de type presse, actualités, communiqués  
 
|Revue de presse, actualités, communiqués: derniers articles de type presse, actualités, communiqués  
 
|'''Obligatoire'''
 
|'''Obligatoire'''
|
+
|{{oui}}
|
+
|{{oui}}
 
|
 
|
 
|
 
|
Ligne 109 : Ligne 109 :
 
|Taxonomie: thèmes, types de publication, catégories
 
|Taxonomie: thèmes, types de publication, catégories
 
|'''Obligatoire'''
 
|'''Obligatoire'''
|
+
|{{oui}}
 
|
 
|
 
|
 
|
Ligne 117 : Ligne 117 :
 
|Chaque élément de taxonomie est associé à une page (ex : mot-tag "open bar" → http://april.org/themes/open-bar), éditable : chapeau avant article , image, etc. pouvoir configurer la pagination
 
|Chaque élément de taxonomie est associé à une page (ex : mot-tag "open bar" → http://april.org/themes/open-bar), éditable : chapeau avant article , image, etc. pouvoir configurer la pagination
 
|'''Obligatoire'''
 
|'''Obligatoire'''
|
+
|{{oui}}
 
|
 
|
 
|
 
|
Ligne 133 : Ligne 133 :
 
|Structures d'articles différente en fonction du type d’article : revue presse, évènements, etc.
 
|Structures d'articles différente en fonction du type d’article : revue presse, évènements, etc.
 
|'''Obligatoire'''
 
|'''Obligatoire'''
|
+
|{{oui}}
|
+
|Difficile
 
|
 
|
 
|
 
|
Ligne 157 : Ligne 157 :
 
|États de publication : au moins publié, en validation, en cours d’écriture, retiré (si possible)
 
|États de publication : au moins publié, en validation, en cours d’écriture, retiré (si possible)
 
|'''Obligatoire'''
 
|'''Obligatoire'''
|
+
|{{oui}}
|
+
|{{oui}}
 
|
 
|
 
|
 
|
Ligne 165 : Ligne 165 :
 
|Programmer la publication d'un contenu.  
 
|Programmer la publication d'un contenu.  
 
|'''Bien'''
 
|'''Bien'''
|
+
|{{oui}}
|
+
|{{oui}}
 
|
 
|
 
|
 
|
Ligne 173 : Ligne 173 :
 
|Le CMS devrait proposer une gestion des utilisateurs avec différents profils donnant différents droits d'accès (en création de contenu et en lecture
 
|Le CMS devrait proposer une gestion des utilisateurs avec différents profils donnant différents droits d'accès (en création de contenu et en lecture
 
|'''Obligatoire'''
 
|'''Obligatoire'''
|
+
|{{oui}}
 
|
 
|
 
|
 
|
Ligne 193 : Ligne 193 :
 
|Édition par saisie uniquement via formulaire web de code HTML et/ou markup sans avoir recours à des tags htmls compliqués (autres que a, p ...), éventuellement en mode wysiwyg si production de code propre et récupération de l'existant.  
 
|Édition par saisie uniquement via formulaire web de code HTML et/ou markup sans avoir recours à des tags htmls compliqués (autres que a, p ...), éventuellement en mode wysiwyg si production de code propre et récupération de l'existant.  
 
|'''Obligatoire'''
 
|'''Obligatoire'''
|
+
|{{oui}}, html, code spip, édition wysiwyg
|
+
|{{oui}}, html, wysiwyg
 
|
 
|
 
|
 
|
Ligne 201 : Ligne 201 :
 
|Pouvoir prévisualisation un contenu avant publication
 
|Pouvoir prévisualisation un contenu avant publication
 
|'''Obligatoire'''
 
|'''Obligatoire'''
|
+
|{{oui}}
|
+
|{{oui}}
 
|
 
|
 
|
 
|
Ligne 210 : Ligne 210 :
 
|'''Bien'''
 
|'''Bien'''
 
|
 
|
|
+
|{{oui}}
 
|
 
|
 
|
 
|
Ligne 217 : Ligne 217 :
 
|Upload de plusieurs fichiers par article, insertion dans le corps de l'article, éventuelle vignette.  
 
|Upload de plusieurs fichiers par article, insertion dans le corps de l'article, éventuelle vignette.  
 
|'''Bien'''
 
|'''Bien'''
|
+
|{{oui}}
 
|
 
|
 
|
 
|
Ligne 225 : Ligne 225 :
 
|L'administration du site (contenu, page de garde, configuration…) doit être possible au maximum juste avec le navigateur web
 
|L'administration du site (contenu, page de garde, configuration…) doit être possible au maximum juste avec le navigateur web
 
|'''Bien'''
 
|'''Bien'''
|
+
|{{oui}}
|
+
|{{oui}}
 
|
 
|
 
|
 
|
Ligne 247 : Ligne 247 :
 
|Retour possible et traçable des objets éditoriaux aux anciennes révisions
 
|Retour possible et traçable des objets éditoriaux aux anciennes révisions
 
|'''Obligatoire'''
 
|'''Obligatoire'''
|
+
|{{oui}}
|
+
|{{oui}}
 
|
 
|
 
|
 
|
Ligne 284 : Ligne 284 :
 
|Faciliter la mise en page d'images par le formulaire éditorial sans saisir d’HTML.
 
|Faciliter la mise en page d'images par le formulaire éditorial sans saisir d’HTML.
 
|'''Bien'''
 
|'''Bien'''
|
+
|{{oui}} en wysiwyg
|
+
|{{oui}} en wysiwyg
 
|
 
|
 
|
 
|
Ligne 291 : Ligne 291 :
 
|Citation, italique, gras, boutons, etc. Directement en HTML ou langage de markup.
 
|Citation, italique, gras, boutons, etc. Directement en HTML ou langage de markup.
 
|'''Obligatoire'''
 
|'''Obligatoire'''
|
+
|{{oui}}
|
+
|{{oui}}
 
|
 
|
 
|
 
|
Ligne 299 : Ligne 299 :
 
|Possibilité de créer des galleries dans la page
 
|Possibilité de créer des galleries dans la page
 
|'''Bien'''
 
|'''Bien'''
|
+
|{{oui}} en html ou plugin
|
+
|{{oui}}
 
|
 
|
 
|
 
|
Ligne 307 : Ligne 307 :
 
|Versions alternatives des articles : mode impression propre
 
|Versions alternatives des articles : mode impression propre
 
|'''Bien'''
 
|'''Bien'''
|
+
|{{oui}} via CSS
|
+
|{{oui}} via CSS
 
|
 
|
 
|
 
|
Ligne 315 : Ligne 315 :
 
|Versions alternatives des articles : mode mobile
 
|Versions alternatives des articles : mode mobile
 
|'''Obligatoire'''
 
|'''Obligatoire'''
|
+
|{{oui}} via CSS
|
+
|{{oui}} via CSS
 
|
 
|
 
|
 
|
Ligne 373 : Ligne 373 :
 
|Pouvoir « attacher un fichier » à l’article.
 
|Pouvoir « attacher un fichier » à l’article.
 
|'''Bien'''
 
|'''Bien'''
|
+
|{{oui}}
|
+
|{{oui}}
 
|
 
|
 
|
 
|
Ligne 381 : Ligne 381 :
 
|Disposer d’un gestionnaire de médias, les classer, les renommer, les référencer, les déplacer et les réutiliser.
 
|Disposer d’un gestionnaire de médias, les classer, les renommer, les référencer, les déplacer et les réutiliser.
 
|'''Bien'''
 
|'''Bien'''
|
+
|{{non}}
|
+
|{{oui}}
 
|
 
|
 
|
 
|
Ligne 403 : Ligne 403 :
 
|Positionner les métas (<meta property="og:xxx"/>) correctement pour gérer les partages dans les réseaux sociaux et positionner les images dans les liens web
 
|Positionner les métas (<meta property="og:xxx"/>) correctement pour gérer les partages dans les réseaux sociaux et positionner les images dans les liens web
 
|'''Bien'''
 
|'''Bien'''
|
+
|{{oui}} via template
|
+
|{{oui}} via template
 
|
 
|
 
|
 
|
Ligne 411 : Ligne 411 :
 
|Implémenter un mécanisme de meta dans l'esprit de alinks
 
|Implémenter un mécanisme de meta dans l'esprit de alinks
 
|'''Si possible'''
 
|'''Si possible'''
|
+
|Possible via plugin ou développement
|
+
|Possible via plugin ou développement
 
|
 
|
 
|
 
|
Ligne 419 : Ligne 419 :
 
|Ajouter des boutons de partages Twitter, Mastodon, …
 
|Ajouter des boutons de partages Twitter, Mastodon, …
 
|'''Si possible'''
 
|'''Si possible'''
|
+
|{{oui}}
|
+
|{{oui}}
 
|
 
|
 
|
 
|
Ligne 427 : Ligne 427 :
 
|Permettre de changer facilement l'url d'une page, définir plusieurs alias.
 
|Permettre de changer facilement l'url d'une page, définir plusieurs alias.
 
|'''Obligatoire'''
 
|'''Obligatoire'''
|
+
|{{oui}}
|
+
|{{oui}} mais un seul alias
 
|
 
|
 
|
 
|
Ligne 459 : Ligne 459 :
 
|Possibilité de remonter les backlinks.
 
|Possibilité de remonter les backlinks.
 
|'''Si possible'''
 
|'''Si possible'''
|
+
|{{oui}}, natif
 
|
 
|
 
|
 
|
Ligne 486 : Ligne 486 :
 
!Commentaire
 
!Commentaire
 
|-
 
|-
|Modifier facilement les menus. Pouvoir ranger facilement les élements d'un menu par ordre alphabétique, le cas échéant.
+
|Modifier facilement les menus. Pouvoir ranger facilement les éléments d'un menu par ordre alphabétique, le cas échéant.
 
|'''Bien'''
 
|'''Bien'''
|
+
|{{oui}} via le plugin [[https://contrib.spip.net/Menus-3139|Menu]]
|
+
|{{oui}}, natif
 
|
 
|
 
|
 
|

Version du 28 juin 2018 à 14:36

Cahier des charges général

  • logiciel libre
  • production de code HTML
    • accessible (validation WAVE)
    • valide W3C
    • ne nécessitant pas javascript dans la partie publique
  • rôles de contributeurs donnant accès à des fonctionnalités différentes. À minima:
    • contributeur
    • administrateur/webmaster
    • superadmin
  • système de contrôle de versions des objets éditoriaux, revert possible
  • aspect graphique identique à l'existant ou proche (un rafraîchissement du style peut être proposé, notamment pour améliorer le mobile)


User stories

Interviewer:

  • Fred
  • Étienne
  • Isabella
  • Marie-Odile
  • Lionel
  • François

Cahier des charges de migration

Les URLs doivent être toutes conservées et mener au contenu migré. Pour cela, le CMS doit soit associer le contenu aux mêmes URLs, soit, si ce n'est pas possible, mettre en place une redirection via htaccess ou équivalent.

Les fichiers uploadés doivent être accessibles sous les mêmes conditions d'autorisation.

Fonctionnalités éditoriales attendues

Page d'accueil

Fonction Importance Spip Wordpress Wagtail Joomla Commentaire
Citation du moment: affichage d'un article de type citation pris au hasard Obligatoire Oui Oui
Flux RSS: configurables à partir de l'interface d'administration ou du template (LinuxFR, AdL, Lolix, ...) Obligatoire Oui Oui
Bandeaux de campagnes: idéalement configurables à partir de l'interface de type citation pris au hasard Obligatoire Oui Oui
Dernière vidéo: dernier article de type video, avec métadonnées affichées (chapo) + vignette Obligatoire Oui Oui (à confirmer pour les métadonnées)
Nuage de tags: chaque article doit pouvoir être taggué Obligatoire Oui Oui
Revue de presse, actualités, communiqués: derniers articles de type presse, actualités, communiqués Obligatoire Oui Oui


Taxonomie

Fonction Importance Spip Wordpress Wagtail Joomla Commentaire
Taxonomie: thèmes, types de publication, catégories Obligatoire Oui
Chaque élément de taxonomie est associé à une page (ex : mot-tag "open bar" → http://april.org/themes/open-bar), éditable : chapeau avant article , image, etc. pouvoir configurer la pagination Obligatoire Oui
Les taxonomies de type date doivent produire des calendriers web, ICAL, RSS, etc. Bien
Structures d'articles différente en fonction du type d’article : revue presse, évènements, etc. Obligatoire Oui Difficile


Workflow de publication

Fonction Importance Spip Wordpress Wagtail Joomla Commentaire
États de publication : au moins publié, en validation, en cours d’écriture, retiré (si possible) Obligatoire Oui Oui
Programmer la publication d'un contenu. Bien Oui Oui
Le CMS devrait proposer une gestion des utilisateurs avec différents profils donnant différents droits d'accès (en création de contenu et en lecture Obligatoire Oui

Fonctions d’édition

Fonction Importance Spip Wordpress Wagtail Joomla Commentaire
Édition par saisie uniquement via formulaire web de code HTML et/ou markup sans avoir recours à des tags htmls compliqués (autres que a, p ...), éventuellement en mode wysiwyg si production de code propre et récupération de l'existant. Obligatoire Oui, html, code spip, édition wysiwyg Oui, html, wysiwyg
Pouvoir prévisualisation un contenu avant publication Obligatoire Oui Oui
Accéder à la prévisualisation du contenu dans la même page où l'on édite sans validation sur une page déjà publiée. Bien Oui
Upload de plusieurs fichiers par article, insertion dans le corps de l'article, éventuelle vignette. Bien Oui
L'administration du site (contenu, page de garde, configuration…) doit être possible au maximum juste avec le navigateur web Bien Oui Oui


Suivi des révisions

Fonction Importance Spip Wordpress Wagtail Joomla Commentaire
Retour possible et traçable des objets éditoriaux aux anciennes révisions Obligatoire Oui Oui
Afficher les différences des révisions des objets éditoriaux Obligatoire
Suivre les modifications apportées à la "structure" du site (ex : suppression d'une page, d'un éléments d'un menu, modification d'un titre) Bien


Mise en page

Fonction Importance Spip Wordpress Wagtail Joomla Commentaire
Faciliter la mise en page d'images par le formulaire éditorial sans saisir d’HTML. Bien Oui en wysiwyg Oui en wysiwyg
Citation, italique, gras, boutons, etc. Directement en HTML ou langage de markup. Obligatoire Oui Oui
Possibilité de créer des galleries dans la page Bien Oui en html ou plugin Oui
Versions alternatives des articles : mode impression propre Bien Oui via CSS Oui via CSS
Versions alternatives des articles : mode mobile Obligatoire Oui via CSS Oui via CSS


Multi-linguisme

Fonction Importance Spip Wordpress Wagtail Joomla Commentaire
Avoir plusieurs sites, chacun dans sa langue avec des pages disponibles uniquement dans un site Obligatoire
Fonctionnalité de traduction : les traductions sont attachées à l’objet éditorial. Obligatoire
Vue visiteur: passer d'une version à l'autre simplement Bien'


Medias

Fonction Importance Spip Wordpress Wagtail Joomla Commentaire
Pouvoir « attacher un fichier » à l’article. Bien Oui Oui
Disposer d’un gestionnaire de médias, les classer, les renommer, les référencer, les déplacer et les réutiliser. Bien Non Oui


SEO, web sémantique, réseaux sociaux

Fonction Importance Spip Wordpress Wagtail Joomla Commentaire
Positionner les métas (<meta property="og:xxx"/>) correctement pour gérer les partages dans les réseaux sociaux et positionner les images dans les liens web Bien Oui via template Oui via template
Implémenter un mécanisme de meta dans l'esprit de alinks Si possible Possible via plugin ou développement Possible via plugin ou développement
Ajouter des boutons de partages Twitter, Mastodon, … Si possible Oui Oui
Permettre de changer facilement l'url d'une page, définir plusieurs alias. Obligatoire Oui Oui mais un seul alias
Pouvoir produire des calendriers ical et des flux RSS pour tous types de contenus. Définir un flux RSS général, blacklister un article du ou des flux RSS. Obligatoire
Disposer d’un type de contenu podcast avec un flux RSS particulier pour les lecteurs de podcast. Bien
Gérer dynamiquement le fichier robots.txt. Si possible
Possibilité de remonter les backlinks. Si possible Oui, natif
Gérer les parcours de visite, clics par article, etc. Si possible


Structure du site

Fonction Importance Spip Wordpress Wagtail Joomla Commentaire
Modifier facilement les menus. Pouvoir ranger facilement les éléments d'un menu par ordre alphabétique, le cas échéant. Bien Oui via le plugin [[1]] Oui, natif
Reprendre les vues de Drupal personnalisables (type de contenu affiché, longueur des accroches, nombre d'éléments par page...) par ex. https://www.april.org/actualites Obligatoire
Gestion des campagnes/bannières, ajout sur toutes les pages, exclusion sur certaines pages. Bien
Ajouter automatiquement les pages dans le flux RSS global Bien
Pouvoir désactiver l'ajout automatique d'une page dans le flux RSS Bien
Reprendre des flux RSS sur la page d'accueil Obligatoire
Gestion du footer sitemap la plus automatisée possible Si possible


Interactions

Fonction Importance Spip Wordpress Wagtail Joomla Commentaire
Disposer d’un formulaire de contact paramétrable avec différentes adresses de courriel en fonction des thèmes, plus antispam (accessible, paramétrable). Obligatoire
Bloquer l'enregistrement de comptes sans validation, bloquer les commentaires sauf sur certaines pages spécifiques. Obligatoire


Intégration à gDTC

Fonction Importance Spip Wordpress Wagtail Joomla Commentaire
Il est possible d'afficher dans certaines pages des indices sur les nombres de membres, idéalement par l'interpolation d'une variable extraite à partir de la base des membres. Obligatoire

La page personnelle du membre est intégrable comme partie du site, en reprenant la charte graphique générale et en s'authentifiant comme membre.

Bien
Une page permet de se renvoyer le mot de passe Obligatoire
Le formulaire d'adhésion est intégré au CMS Obligatoire
Trombinoscope, équipe, page des personnes morales Ces pages sont intégrées au CMS tout comme /my/. Bien
Il est possible d'utiliser gDTC comme base d'authentification des membres et ainsi d'implémenter le SSO. Idéalement, les membres du CA et permanents ont des droits étendus ajoutés. Obligatoire


Recherche

Fonction Importance Spip Wordpress Wagtail Joomla Commentaire
Avoir un moteur de recherche textuelle performant Bien
Idéalement, pouvoir restreindre par type de contenu, thème, trier par pertinence, par date, filtrer sur les articles disponibles en multilingue. Si possible



Besoins admin sys

Fonction Importance Spip Wordpress Wagtail Joomla Commentaire
Les fonctionnalités essentielles doivent être dans le core du logiciel dans la mesure du possible: faire appel au moins de modules externes possibles Bien
Pouvoir développer des modules persos Bien
Pouvoir mettre en place une version d'intégration/dév Bien
Faciliter l'utilisation de sélecteurs CSS pour la mise en page pour des pages particulières (i.e. utiliser des ID, classes sur body en fonction du type d'article, l'ID de la page, etc.) Si possible
Permettre d'ajouter des enrichissements CSS inline Bien
Conserver les URLs actuels Obligatoire
Pouvoir mettre le site en blackout Bien
Le CMS doit pouvoir fournir des pages 404 personnalisées, éventuellement adaptatives (outil de recherche, proposition de contenu). Bien
Les articles récupérés par le bot Alexandrie sont récupérables par le CMS sous la forme d'un type d'article particulier, avec des champs spécifiques. Obligatoire
Fonctionne en Debian stable (stretch au 13/03/2018), en 100% libre Obligatoire
Sauvegarde du corpus dans une base MySQL Obligatoire
Support full HTTPS Obligatoire
Supervision possible des nouvelles versions disponibles, des alertes de sécurité. Bien
Facilité d'application des patches de sécurité. Obligatoire
Supervision du fonctionnement nominal, envoi d'alertes par le CMS en cas de besoin, journal d'évènements. Obligatoire