En préambule il est nécessaire de se souvenir que personne n’apprécie se retrouver sur une page d’erreur 404. Pensez à vous servir parcimonieusement de cette possibilité de dépublier vos articles car les moteurs de recherche ne pourront évidemment pas indexer correctement votre site. Un site vivant conserve les strates de son existence et c’est plutôt plaisant, encore une fois, mieux vaut avoir un système d’archivage que de suppression. Maintenant que vous êtes prévenu…
Dépublier des objets automatiquement.
Dépublie est un plugin avec un code très simplifié, il se veut pédagogique et facile à comprendre. Il effectue pratiquement les mêmes tâches que le plugin Dépublications pour SPIP2.
Il ne porte pas le même nom car il ne possède qu’une seule table dans la base de données qui peut être éventuellement étendue aux auteurs ou à d’autres objets par la suite.
Depuis la version 1.3.4, la configuration du plugin détecte tout objet qui supporte la dépublication. Pour être pris en compte, la table principale de l’objet doit posséder les champs « date, id_rubrique, statut » comme articles rubriques ou brèves ou bien s’il a été créé indépendamment, par exemple avec le plugin « la Fabrique ».
La table unique très simple avec le couple générique objet/id_objet, le nouveau statut et sa date de changement.
L’écriture de son code profite du système des pipelines des formulaires CVT
- http://programmer.spip.net/formulaire_charger
- http://programmer.spip.net/formulaire_verifier,534
- http://programmer.spip.net/formulaire_traiter
il se greffe ainsi au formulaire dater.
http://programmer.spip.net/Passage-d-arguments-aux-fonctions
Simple affichage d’une ligne supplémentaire dans le formulaire dater avec l’inclusion d’un bout de squelette.
Installation
Comme tous les plugins, voir http://www.spip.net/fr_article3396.html
Configuration
Le plugin Dépublie dispose d’une configuration accessible depuis la page des plugins.
On choisira d’afficher la ligne supplémentaire du formulaire, soit le input des dates, sur certains secteurs ou rubriques.
La page de configuration de Dépublie.
Si l’on souhaite que l’article prenne automatiquement une date de dépublication, il faut remplir la durée de publication voulue sinon le faire manuellement ou automatiser le processus par vous même en le codant. Au changement de statut de l’objet comme un article, la date de dépublication sera enregistrée automatiquement en base avec la durée configurée.
A partir de la page de configuration, accèdez à la page qui affiche les objets en attente de changement de statut (nommée Liste des dépublications) ecrire/?exec=configurer_depublie
Rappel sur les statuts SPIP :
- Statut « à la poubelle » : l’article est conservé 24 heures puis effacé définitivement de la base.
- Statut « refusé » : l’article est retiré de l’espace public mais il est conservé en base de données.
Étendre à d’autres objets
L’écriture de la tâche automatique de dépublication dans genie/depublier.php
permet d’en faire profiter d’autres objets. Ainsi vous pouvez mettre dans la table spip_depublies divers couples de style (objet/id_objet) comme (mot/32) ou (auteur/456) avec les dates de dépublication de votre choix en utilisant les outils appropriés (et donc penser à ajouter les champs nécessaires avec le plugin Cextra par exemple)
Tester la dépublication
Pour vérifier les actions de dépublications, il suffit de se rendre sur la page ecrire/?exec=job_queue
et lancer la tâche depublier.
Dépublier ou archiver ?
En activant le plugin ciarchive : statut archivé pour les articles qui ajoute un nouveau statut archive aux articles (sans modifier la date de publication) on peut parfaitement automatiser l’archivage. Dans la configuration du plugin « Dépublie » passez le sélecteur de statut « Choisissez le statut à donner lors de la dépublication » à « archive ».
Discussions par date d’activité
29 discussions
bonjour,
Merci d’avance pour votre effort et votre temps disponible.
j’ai essayé d’activer votre plugin sur un SPIP 3.0.7. il est déclaré incompatible.
avez-vous une idée ?
merci d’avance.
Je ne sais pas pourquoi il y a ce message.
Dans tous les cas, il est préférable de réaliser les mises à jour de SPIP régulièrement la version actuelle est en SPIP 3.0.16
Hello,
La cause est « simple » : le plugin est indiqué compatible SPIP 3.0.13 et supérieur (http://zone.spip.org/trac/spip-zone...), soit probablement la version SPIP courante au moment de la publication du plugin et c’est très bien ainsi.
En effet : chaque nouvelle version amène son lot de corrections de bugs identifiés et il se pourrait très bien qu’une version précédente soit dès lors effectivement incompatible, pas par principe (la branche 3.0 de SPIP est supposée avoir des interfaces de programmation stables) mais dans les faits.
Mais surtout : certaines nouvelles versions bouchent des trous de sécurité dont certains sont importants. Et autant le dire, la version 3.0.7 est concernée par au moins un de ces trous. On ne peut que te conseiller de mettre ton SPIP à jour (version 3.0.17 à la date de ce message) et à continuer dans le futur. Les mises à jour dans la même branche sont d’une grande simplicité pour les sites codés proprement.
Répondre à ce message
Bonjour,
est-ce qu’il est possible de trier dans une boucle les articles par date de dépublication ? Merci par avance, ce plugin est super bien !
Bonne idée, c’est à rajouter dans le plugin la prochaine fois
Franchement merci ! Il est vraiment bien ton plugin, parce que des fois utiliser l’agenda c’est trop une usine à gaz et trop complexe à expliquer à une équipe. Là c’est super simple et clair, Merci encore.
Bonjour,
tant mieux si cela te sert ! Je suis curieuse de connaitre la façon dont tu l’utilises, peux-tu l’expliquer ici ? Merci
Je l’utilise comme un agenda simplifié. Lors de la création de l’article l’auteur indique la date de dépublication qui correspond à la date de fin de l’événement du site. Une fois cette date passée l’article est dépublié et disparait du site. Cela évite d’avoir un article plus un évènement agenda, ce qui me semble complexe pour une utilisation simple comme expliqué ci-dessus.
Répondre à ce message
Bonjour touti et merci pour ce portage.
J’ai besoin de ce module pour dépublier un auteur à une date donnée. Un admin doit renseigner la date dans le backoffice de spip (sa fiche auteur dans l’idéal).
Mettre l’auteur à un statut visiteur sera parfait.
Vous dites que ce module « peut être éventuellement étendue aux auteurs ou à d’autres objets par la suite »
Apparemment il faut modifier genie/depublier.php pour l’étendre aux auteurs ? Que doit-on modifier dans ce fichier ?
Bonsoir, pour un autre objet comme par exemple les auteurs, il suffit de remplir les champs de la table spip_depublies avec le couple auteur/id_auteur la date_depublication et le statut que l’auteur prendra :
Par exemple manuellement si vous utilisez mysql
Je viens d’essayer, ça marche très bien.
Il faut donc fabriquer le code php pour entrer/modifier ces champs avec une interface de formulaire sur la page des auteurs, ce qui n’existe pas à l’heure actuelle.
Merci touti pour cette réponse.
Hélas les admins du site n’ont pas la connaissance suffisante pour modifier manuellement la base sql lorsqu’ils auront besoin de modifier un auteur. Le risque est trop important.
De mon côté je ne sais pas coder en php...
Avez-vous la possibilité de le coder ?
Bonsoir V1nce,
je n’ai actuellement pas l’usage ni trop le temps de faire ces ajouts de code dans le SAD ;)
Lorsque j’ai cherché longuement un module capable de faire une dépublication d’auteur (avec statut visiteur), j’ai vu que pas mal de spipnautes en avaient également l’usage sur différents forums. Pourtant depuis le plugin dépublication de Julien, aucun portage en spip 3 n’avait été fait. Cela comblerai pourtant une demande importante et un élément majeur de spip (la gestion plus fine des auteurs).
Ton module semble le plus adapté à cette évolution car il manque peu de choses comme tu l’indiques pour l’ajout de cette fonction.
Si un dev php ou toi-même arrivez à trouver le temps pour réaliser cette mise à jour, ce serait vraiment une sacré bonne évolution.
Merci en tout cas pour tes réponses rapides.
Répondre à ce message
@touti
Donc si je comprend bien votre post de 11:19, seule le webmestre a accès à cette fonction, donc au bouton changer ?
Pas moyen que ce soit accessible aux admin restreint donc ...
Regardez bien l’image dans l’article, il y a un seul bouton « Changer » et je viens de tester en admin restreint il fonctionne très bien.
Effectivement ! Je viens de vois avec mes utilisateurs... et j’ai compris !
Ils créent l’article, l’éditent, lui attachent un logo et un évènement et ils veulent ensuite lui affecté sa date de dépublication. Or à ce stade il y a une seule ligne qui dit « date de création » !!!
Et effectivement à ce stade pas de bouton changer !!!!
La mise en ligne fait bien aparaître les dates de dépublication et le bouton Changer...
Donc pas de bug, juste un petit soucis de façon de mettre en ligne.
Répondre à ce message
Un nouveau retour...
La fonction dépublie n’est accessible qu’au Webmestre principal ?
Car j’ai montré cette fonction sur mon poste et une fois devant leur poste et authentifié avec leurs info, les administrateurs restreints ne peuvent voir le bouton changer à droite de la ligne création/publication de l’article... normal ?
Vous parlez du bouton « Changer » qui en administrateur restreint ou en webmaster principal est le même et l’unique bouton puisque c’est un formulaire qui gère publication et dépublication !
Répondre à ce message
Bonjour et surtout MERCIIIIIII pour avoir porté ce plugin que j’attendais depuis longtemps. Il fonctionne bien chez moi pour l’instant, j’attends de vois si le « CRON » marche correctement. Par contre une remarque : il s’agit de la ligne « Choisir la (ou les) rubrique(s) pour y afficher le formulaire : Identifiant(s) séparé(s) par des virgules » dans la configuration.
Il faut saisir toutes les rubriques si on veut que ce plugin s’affiche dans tous le site ?
C’est fastidieux car dans un gros site comme celui que je gère c’est pas évident exemple ma première tentative donne déjà un champ rempli ainsi : « 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,20,21,22,23,24,25,26,27,30,31,32,33,34,35,36,37,38,39,40,41,340,476,495 » et ce n’est que le début.
Ais je mal compris quelque chose ?
Je vais voir ce que je peux faire !
Merci d’avance et encore merci !!!! :-)
On peut dorénavant choisir le secteur dans lequel le formulaire de dépublication s’affiche, du coup, tous les articles du ou des secteurs choisis afficheront le formulaire,
le plus dur a été de simplifier la sémantique du formulaire !
Si urgence, le plugin est en SVN http://zone.spip.org/trac/spip-zone/changeset/80271,
le zip ne devrait pas tarder !
Mille mercis ! Je vais attendre le zip car quand j’essaie de mettre à jour les plugins en SVN... gloupsss... ça foire souvent...
Répondre à ce message
Bonjour,
Merci pour le portage ! :)
Petite question, j’ai spécifié une rubrique (256), un statut « poubelle » dans la config de depublie, créé un article dans 256, en mettant un jour et une heure précise ... Mais l’article ne bouge pas de statut ...
J’ai oublié quelque chose ?
SPIP 3.0.13 [20962] + écran de sécurité 1.1.8
En effet, merci de la remarque, le plugin est initialement prévu pour des dépublications journalières (le cron passe deux fois par jour), je vais y ajouter l’heure dès que j’ai un peu de temps !
#todo
Bonjour,
Merci pour la réponse, et désolé pour la mienne un peu tardive ;)
Donc je n’ai plus besoin de chercher ... Autre question, comment je fais pour le plugin soit actif sur tout le site ?
Je viens de tester, et ça marche quand la rubrique est identifiée dans les paramètres du plugin, mais ça s’arrête à la rubrique. C’est à dire que les sous rubriques ne sont pas automatiquement ajoutées dans la configuration du coup ... Donc pour faire court, si je veux utiliser le plugin, je dois mettre tous les id de toutes les rubriques dans la config ???
Répondre à ce message
Bonjour,
J’ai activé avec intérêt ce plugin ;-)
Malheureusement dès que je change le statut de l’article à « Publier », j’obtiens le message suivant
Une idée ?
Bonsoir,
il semble qu’il n’y ait pas de id_rubrique dans la requête SQL mais
je ne vois pas d’où peut venir ce problème. Pouvez vous me donner plus de détails : version SPIP, page exacte…
Bsr,
Merci de la réponse rapide
Mon site est sous SPIP 3.0.13 [20962]
Cela concerne toutes les créations d’article, donc pas de page spécifique
C’est la bonne version stable de SPIP3, ça devrait marcher.
Mais ce n’est pas très précis !
Je ne comprends pas ce que veut dire « toutes les créations d’articles » et « pas de page spécifique » ?
Êtes-vous sur l’URL
ecrire/?exec=article
pour changez manuellement le statut de l’article à ’publié en ligne’ ?Sinon il y a peut-être un plugin qui joue sur le flux en ne renvoyant pas l’id_rubrique, essayez de les désactiver.
Dsl,
ça signifiait que j’’ai essayé en créant plusieurs nouveaux articles dans des rubriques différentes avec l’URL
ecrire/?exec=article
Je vais tester avec les plugins ...
Merci
Ah, et votre image est tronquée car normalement le message doit indiquer de quel squelette il s’agit.
Impossible d’en visualiser plus !
Le squelette est Japibas, mais même désactivé, l’erreur se produit ...
Je vais tester avec le reste
Merci
Répondre à ce message
Bonjour touti et merci.
le zip n’est pas présent, est-ce un oubli où c’est volontaire.
Cordialement
tofum
Bonsoir tofulm,
Patience, il ne devrait pas tarder à se fabriquer :)
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 :
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.
Suivre les commentaires : |