Dépublie

Dépublie des objets, comme des articles à une date prédéfinie, soit automatiquement avec une durée établie au moment du changement de statut en publication, soit manuellement.

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

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.

Page de configuration du plugin Dépublie remarquer l’ajout d’un objet différent qui possède les champs nécessaires.

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 ».

Discussion

Une discussion

  • Si une rubrique contient 2 articles et qu’une date de fin est fixée pour chacun des articles, ils vont bien être dépubliés avec le statut défini.
    En revanche, la rubrique conserve son statut « publie » alors qu’elle devrait aussi être dépubliée lorsque le dernier article n’est plus en ligne.

    Est-ce que cela serait possible ?

    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