Dans le cadre des chantiers sur la documentation la question de l’archivage se pose régulièrement. Aujourd’hui on s’en sort de différentes façons qui sont plus ou moins performantes et pérennes.
J’ai donc repris mon plugin Archivage des objets qui gère un archivage en dehors du statut des objets. Cela commence à bien fonctionner. Le plugin gère les objets quel qu’ils soient, et en particulier, les conteneurs d’objets comme les rubriques.
Maintenant, plusieurs questions se posent :
Dans le public, les objets archivés ne sont pas affichés via les boucles spip et c’est bien le but.
Dans le privé, cette logique n’est pas forcément bonne : je pense qu’il est mieux de les afficher et d’identifier le fait qu’ils sont archivés, mais c’est un juste avis.
En outre, les rubriques étant affichées en PHP (sauf pour la liste) le pipeline post_boucle n’a aucun effet et donc on les voit toujours (sauf à surcharger le PHP).
Sur la fiche d’un objet, le plugin affiche un encart pour avertir de l’archivage ce qui parait opportun.
Sur la fiche d’une rubrique (objet conteneur) ou sur les pages « objets », on affiche la liste des articles par statut ou pas, sauf si ils sont archivés. Je pense qu’il faudrait aussi ajouter la liste des articles archivés via un pipeline non ?
Il existe aussi une page du plugin ou tous les objets archivés sont listés.
Si vous avez d’autres idées je suis preneur.
PS: lors de mes devs j’ai rencontré deux difficultés imposées par spip et je me demande si on ne pourrait améliorer ça en 5.0 :
- la présentation des rubriques qui est en PHP et donc non modifiable aisément et insensible aux pipelines
- les listes d’objets qui ne sont ni extensibles ni paramétrables.