Carnet Wiki

Compatibilité avec le plugin Corbeille

Version 1 — Novembre 2009 archi02

(rédaction en cours)

Ces notes font suite au développement du plugin Vu !. Peut-être mes découvertes pourront-elles faire gagner du temps à d’autres ? :)

Il s’agit ici de rendre compatible avec le plugin Corbeille un quelconque objet éditorial supplémentaire (non-natif de SPIP). On suppose pour la suite que cet objet que vous tentez de rajouter est fourni dans un plugin (avec toute l’organisation des fichiers que cela suppose).

Concrètement, l’objectif est permettre à la corbeille de les voir et d’en gérer la suppression (et éventuellement la restauration). Non pas que soit compliqué (bien au contraire, tout est prévu dans le code), mais dans la mesure où personne ne se revendique développeur du-dit plugin, les informations furent ardues à trouver...

Trois étapes vont être nécessaires :

  • déclarer votre objet à la corbeille ;
  • ajouter la noisette d’affichage ;
  • ajouter les styles et logos ;
  • ajouter les chaines de langues ;

Déclarer l’objet

La corbeille demande à être présentée à votre objet, elle a besoin de connaître :

  • son petit nom,
  • sa table de référence dans la base, éventuellement pour éviter les conflits,
  • et les tables qui lui sont liées, afin de pouvoir ensuite supprimer un élément avec toutes ces liaisons (mots-clés par exemple pour un article)... proprement quoi !

Cela se passe dans le fichier d’options

Le contenu : la noisette

Centrale, c’est grâce à elle qu’on affiche la liste des éléments supprimés de l’objet choisi. Les noisettes des objets éditoriaux natifs (articles, brèves, forums, sites...) sont fournies avec le plugin. Ceci nous arrange bien car ce sont de parfaits modèles, où il ne suffit plus que de remplacer le nom les boucles par les vôtres, ainsi que les balises et tout ce qui est contextuel (à vous de voir selon votre nouvel objet).

Votre noisette devra porter le nom ’corbeille_objet.html’ où objet est le nom de votre objet ; et se situer dans le répertoire ’prive/listes’ de votre plugin.

Retour à la version courante

Toutes les versions