Corbeille pour Spip 1.9

La version plugin d’une ancienne contrib

Ceci est une archive périmée mais qui reste intéressante, parfois autant pour l’article que les commentaires associés.

Pour forcer l’effacement de la base de donnée de certains objets SPIP

Une documentation succinte et improvisée sur ce plugin

Pour qui : Ce plugin est trivial à installer et à faire fonctionner. Par contre il efface immédiatement et définitivement certains éléments, il faut donc s’en servir en connaissance de cause.

A quoi ça sert

Ce plugin permet de déroger au comportement standard de SPIP qui efface certains objets de la base de donnée avec un délai, ou les retire de l’affichage public sans les effacer de la base .... voir les explications plus bas, au paragraphe « Pour en savoir plus »

Pour télécharger et installer

Jusqu’à nouvel ordre le paquet zip est sur la zone de téléchargement de la Zone ... c’est un plugin donc le dossier dézippé est à installer tel quel dans le répertoire « plugins » de son site (à créer manuellement s’il n’existe pas), puis à activer via l’onglet « Configuration > gestion des plugins » de l’espace privé, comme pour tous les autres plugins

Le paquet ’corbeille.zip’ est téléchargeable sur la zone.

Pour s’en servir

Placer à la poubelle (ou en statut refusé) ce que l’on veut supprimer via la commande standard de SPIP, puis vider la dite poubelle via le plugin. Cela concerne : brèves ; articles ; forums publics ; forums privés ; auteurs ; signatures des pétitions jugées irrecevables, et syndication.

Ou se trouve l’icone ?
l’icone du plugin s’ajoute au menu configuration
Choix du type d’entrée à effacer
un clic met en évidence la catégorie choisie
Case à cocher pour la suppression définitive

Le plugin va forcer l’effaçage immédiat de ces objets SPIP de la base de donnée. Les relations entre les objets SPIP seront aussi effacer (tel que les associations auteurs-articles)
Mais il ne nettoie :
-  ni le cache sur le disque,
-  ni l’indexation dans la base par le moteur de recherche,
-  ni les documents placés dans le répertoire IMG de votre site.

Si vous voulez enlevez toute trace, pensez aussi à vider le cache du serveur et à ré-indexez votre site de temps en temps (tous les mois, 2 mois, ou 6 mois par exemple).

L’historique de ce plugin

Ce plugin a une longue histoire, et n’a ni développeur, ni documentaliste [1] en titre, ni Service Après Don assuré, voir ci-dessous la reprise d’un message sur spip-user

bon j’ai ajouté le paquet corbeille_1_9_1.zip (sur http://zone.spip.org/files/spip-zone/) , il sera dispo des 11h30. le truc en fait, c’est que y a pas de développeur pour ce plugin ... il vit tout seul :)

Mathieu Onfray est l’auteur de la contrib corbeilles que l’on trouve sur spip-contrib pour spip 1.8.x. (cf. les articles en archive Vider la corbeille de SPIP, version 1.8 et Vider la Corbeille de Spip, version 1.4)

Mais en ce qui concerne le plugin, c’est une transposition que j’avais faite de sa contrib vers février ou mars 2006, dans la phase de test du principe des plugins. A vrai dire, c’etait juste une « proof of concept », et je ne pensais pas qu’il servirait reellement, mais maintenant je vois qu’il est utilisé.

Cependant Mathieu n’en assure pas le dev ni la maintenance, et moi je n’ai pas vraiment le temps de m’en occuper. Il est donc bien sans développeur, même si il y a pas longtemps j’ai reporté des corrections qui m’avaient été envoyées par mail, et que je viens de faire le zip.

Cédric

Le comportement standard de SPIP

L’administration de SPIP permet de « mettre à la poubelle » (ou en statut refusé), puis effacer de la base, des éléments dans les conditions suivantes, en résumé :
-  les forums modérés sont marqués « supprimés » mais gardés en base de donnée pour des raisons juridiques (si problèmes ultérieurs lié à la gestion des forums) ... les forums associés à des éléments supprimés (article, brève, rubrique, site) sont aussi effacés au bout de 1 jour normalement ;
-  les auteurs sont supprimés seulement s’ils ne sont pas associés à des articles, et ce avec un certain délai (1 jour normalement) ;
-  les rubriques ne peuvent être supprimées que si elles ne contiennent plus rien ;
-  Tous les autres éléments passés à la poubelle (ou refusé) sont eux aussi supprimés après un certain délai (1 jour normalement)

Même remarque que précédemment pour le dossier IMG (non purgé), l’indexation, et les différents caches.

Il est intéressant de regarder les commentaires du code pour en savoir plus. Le nettoyage des éléments à la poubelle est défini dans la fonction optimiser_base. Le délai standard est de 86400 secondes soit 1 jours. Le nettoyage étant appelé par le « cron » de Spip, il dépend du nombre d’appel à ce script de cron (visite de certaines pages, partie admin, balise cron ...). Ce décalage, et cette durée parfois prolongée par le cron en cas de site peu visité (cas d’un site en local, ou un intranet) peuvent expliquer la (fausse) réputation de ne pas effacer de la poubelle SPIP

Ce script optimiser_base effectue toute une série d’actions sur rubriques, articles, breves, etc .... on le trouve dans le fichier « ecrire/base/optimiser.php. L’étude du texte de celui-ci (Révision 7112 - septembre 2006), nous montre que, selon les commentaires, sont effacés physiquement de la base (fonction DELETE) les éléments suivants dans l’ordre ci-après :

// Rubriques
# les articles qui sont dans une id_rubrique inexistante
# les breves qui sont dans une id_rubrique inexistante
# les forums lies a une id_rubrique inexistante
# les droits d'auteurs sur une id_rubrique inexistante
# les liens des documents qui sont dans une id_rubrique inexistante
# les liens des mots affectes a une id_rubrique inexistante

// Articles
les articles au statut poubelle
# les liens d'auteurs d'articles effaces
# les liens de documents d'articles effaces
# les liens de mots affectes a des articles effaces
# les forums lies a des articles effaces

// Breves
les brèves au statut refusé
# les liens de documents sur des breves effacees
# les liens de mots affectes a des breves effacees
# les forums lies a des breves effacees

// Sites
les sites au statut refusé
# les articles syndiques appartenant a des sites effaces
# les liens de mots affectes a des sites effaces
# les forums lies a des sites effaces

// Auteurs
# les liens d'articles sur des auteurs effaces
# les liens de messages sur des auteurs effaces
# les liens de rubriques sur des auteurs effaces
# effacer les auteurs poubelle qui ne sont lies a aucun article

// Messages prives
# supprimer les messages lies a un auteur disparu

// Mots-cles
# les liens mots-articles sur des mots effaces
# les liens mots-breves sur des mots effaces
# les liens mots-forum sur des mots effaces
# les liens mots-rubriques sur des mots effaces
# les liens mots-syndic sur des mots effaces

// Forums
# les liens mots-forum sur des forums effaces

// Indexation
 // les objets inutiles

Il semble bien que les signatures des pétitions ne soient effectivement pas traitées. et quid de l’effacement physique des rubriques ?

La numérotation dans la base de donnée

Un autre point aussi qui perturbe certains débutants découvrant leur base de donnée (par exemple via phpmyadmin) après des effacements. Ils s’émeuvent de constater des « trous » dans la numérotation (les « id » ne se suivent plus) et se demandent comment « ranger », ou si cela « prend de la place ».

Et bien laissez tomber, cela n’a strictement aucune importance pour le bon fonctionnement de votre site. Les numéros « id » sont en effet des identifiants internes à la base, purement arbitraires, et gérés automatiquement par mysql. leur seule caractéristique importante est qu’ils doivent être uniques. Un nouveau numéro est donc bêtement attribué à chaque nouvel objet dans l’ordre d’arrivée, et l’id d’un élément supprimé est détruit. Tout cela explique que le « id » n’est pas un critère de tri pertinent dans vos boucles.

Voila, n’hésitez pas à compléter vos observations via ce forum. Il est assez amusant d’ailleurs de constater que cette fonction, à priori basique d’emploi, à pu faire l’objet de nombreux messages sur la liste utilisateur par le passé.

Notes

[1L’auteur de cet article intervient ponctuellement pour compiler quelques informations sur ce plugin et c’est tout

Discussion

6 discussions

  • 3

    Bonjour, le plugin corbeille_1_9_1 ne s’affiche pas dans l’interface d’admin sous SPIP 1.9.2a (je valide son installation dans la liste des plugins mais il n’est pas visible dans la barre de menu !)
    et lorque je saisis le chemin « www.monsite.com/ecrire/?exec=corbeille », j’ai un message d’erreur :« Fichier exec/corbeille introuvable »

    Quelqu’un a-t’il une solution ?

    • Bonjour

      Hum je crois voir une coquille dans le chemin. Il ne devrait pas avoir d’espace entre ecrire/ et ?.
      A moins que ce soit dû à SPIP qui reformate le texte au passage.

      Si il n’y a pas de probléme d’espace, pouvez vous indiquer le contenu du repertoire corbeille/ ?

      Essayez d’installer la version corbeille_svn, celle ci apporte un support plus élargi que la 1_9_1.

      Je verifie la version svn

    • Bonjour, c’est SPIP qui a reformaté le post avec un espace entre ecrire/ et ? ;-)

      je n’ai pas de répertoire « corbeille » mais «  »/plugings/corbeille_1_9_1" à la racine qui contient ce que l’on trouve en téléchargement ici : http://files.spip.org/spip-zone/corbeille_1_9_1.zip

      ou peut-on trouver cette version svn que tu évoques ?

      D’avance merci
      Bruno

    • Bonjour

      La version plus récente se trouve ici :
      http://files.spip.org/spip-zone/corbeille_dev.zip

      km

    Répondre à ce message

  • marabbeh

    Pourquoi le plugin n’efface pas les visites, les referers et les index pour les articles ? Ce serait intéressant parce que les tables correspondantes prennent pas mal de place. Mais apparemment le plugin est suffisamment bien fait pour que cette prise en compte soit facilement réalisable.

    Répondre à ce message

  • nicolas

    Salut,
    merci pour ce plugin.

    juste une remarque, dans l’espace d’admin si on liste les auteurs on a toujours le nombre d’articles qu’ils ont écrit, même si ceux ci ont été mis à la corbeille et vider.

    As tu des infos pour gérer ce comptage pour qu’il affiche non pas tous les articles écrits mais ceux publiés.

    Merci de l’info

    A+

    NICOLAS

    Répondre à ce message

  • 1
    Daniel Calin

    Excellent plugin, merci.

    Il ne lui manque vraiment qu’une chose. Non, pas la parole, mais une poubelle aussi pour les sites refusés. Pour une version suivante ?

    • Bonjour

      Une version dev vient d’etre ajoutée. Si j’ai bien suivi le roulement horaires des mise à jours des zip. Celle ci sera telechargeables vers 18h.
      C’est la version 0.3, le zip corbeille_dev.zip

      Chez moi ça tourne mais ça reste encore en dev :)

      Merci pour les retours

    Répondre à ce message

  • ceci est une merveilleuse contrib ; merci a nicolas de l’avoir transformé en plugins ; Mathieu tu avait eu une idée génie avec la corbeille ; et le controleur d’url .

    Les deux contrib sont utilisé avec joie sur le site de notre association

    Répondre à ce message

  • Juste pour briser le silence de ce fourm :langue

    Je viens d’installer ce plugin. Pour le moment rien à redire si ce n’est « Merci ! :D » et « Bonne Année ! »

    Répondre à ce message

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom