Date de modification manuelle

Ce plugin ajoute un nouveau champ sur les articles, permettant de saisir une date de modification manuellement, qui n’est pas renseignée automatiquement et ne change pas à chaque enregistrement de l’article.

Configuration

Une fois le plugin installé, les articles ont un nouveau champ de date qui peut être saisi. Il n’y a rien d’autre à faire [1].

Utilisation

Sur la page d’un article, une nouvelle date de modification manuelle est affichée. Il est possible de la modifier, de la même manière que l’on modifie la date de publication de l’article.

Date de modification manuelle, non renseignée
Formulaire de saisie des dates de l’article
Une entrée est ajoutée pour la date de modification manuelle.
Affichage de la date de modification manuelle renseignée

Dans les squelettes

Le champ créé et utilisé dans la table SQL se nomme date_modif_manuelle et peut donc être utilisé comme balise à l’intérieur des boucles articles dans les squelettes, comme n’importe quel champ de date.

<BOUCLE_art(ARTICLES){id_article}>
Publication : [(#DATE|affdate)]<br />
Mis à jour : [(#DATE_MODIF_MANUELLE|affdate)]<br />
</BOUCLE_art>

Pour certaines listes présentant les articles les plus récents, sur la page d’accueil ou sur des rubriques, il peut être utile d’utiliser un tri qui récupère les articles les plus récents soit par date de modification soit par date de publication. Pour cela on peut utiliser ce critère de tri {!par GREATEST(champ1, champ2)} qui triera en utilisant la plus grande des 2 valeurs :

<BOUCLE_recents(ARTICLES)
    {!par GREATEST(date, date_modif_manuelle)}
    {0, 5}
>
Titre : #TITRE</br>
Date de publication : [(#DATE|affdate)]</br>
Date de modification : [(#DATE_MODIF_MANUELLE|affdate)]</br>

[(#SET{date,
    #DATE_MODIF_MANUELLE|intval
    |?{#DATE_MODIF_MANUELLE, #DATE}
})]
Date le modification, sinon date de publication : [(#GET{date}|affdate)]
<hr />
</BOUCLE_recents>

Notes

[1Une future évolution pourrait être de permettre cette fonctionnalité sur d’autres objets éditoriaux via une configuration.

Discussion

5 discussions

  • Bonjour
    Juste une demande d’amélioration ?
    À l’usage, je m’aperçois que pas mal de rédactrices et rédacteurs oublient de renseigner la date de modification manuelle au moment de la création d’un nouvel article.
    Dans mes squelettes, cette absence de date de modification manuelle exclut ces articles du flux des articles récents.
    Il ne serait pas possible de la créer automatiquement au moment de la première mise en ligne d’un article ?

    Merci

    Répondre à ce message

  • 1

    Bonjour
    Juste pour signaler que ce plugin fonctionne avec Spip 4.0.4

    Répondre à ce message

  • 4

    Très utile ce plugin.

    Ce qui serait vraiment top, ce serait de pouvoir disposer d’un critère « age_modif_manuelle » permettant, dans une boucle, de limiter l’affichage par exemple comme :

    {age_modif_manuelle <30}
    • Le critère age est générique : {age_X} et {age_relatif_X} s’appliquent sur le champ {date_X}.

      Je présume que ça marche tel que tu l’indiques sans rien faire d’autre, non ?

      Avec {age_modif_manuelle} et {age_relatif_modif_manuelle}, les deux correspondant au champ date_modif_manuelle.

    • Lorsque j’insère

      {age_modif_manuelle  <30}

      , j’obtiens l’erreur sql suivante :
      Critère inconnu

    • Oh my bad !

      Ça sera corrigé dans une prochaine version de SPIP.
      Tu peux aussi corriger toi même le fichier ecrire/public/criteres.php en ajoutant un _ sur une expression régulière comme sur : https://git.spip.net/spip/spip/commit/2edefda9

    • Merci beaucoup !

    Répondre à ce message

  • 3

    Que dire ??? Bravo !!... Dans le même ordre d’idée, une date de fin de publication pour les objets de spip (articles, événements, documents,...) serait également une bonne surprise avant les vacances d’été :-)

    • Fin de publication ? encore faudrait-il savoir ce qui est entendu par ça…

      Il y a différents plugins sur la zone qui gèrent ça un peu pour les articles :
      -  archives https://plugins.spip.net/archive.html
      -  depublie https://plugins.spip.net/depublie.html
      -  depublication https://plugins.spip.net/depublication.html

      Pour un autre besoin, d’une date de dépublication possible par article et d’un statut depublié, j’ai également dans ma besace un plugin dépublication : https://gitlab.com/magraine/depublication/

      MM.

    • Oui, en effet, ce que j’entends par date de fin de publication ne signifie nullement que l’article n’est plus publié...

      Cela permettrait, à l’aide d’une simple boucle qui gérerait ce champs, d’ignorer avec le critère doublons, les objets à afficher sur la page.

      Le plugin archive n’est pas compatible avec de nombreux plugins pour le moment
      Le plugin depublication pose problème pour le référencement dans les moteurs de recherche et le but n’est pas que l’objet devienne indisponible mais juste qu’il se retire de la page sommaire à une date fixée, par exemple. :-)

      Cela serait plus facile à gérer pour tous les cas de figure où un objet ne doit paraître en ’front’ que quelques jours ou une semaine ou un mois... plutôt que de gérer avec le critère âge...

    • ...Il y a aussi d’échapper les objets avec un mot clé mais cela devient contraignant si je dois prévoir des mots clés pour chaque cas de figure (un jour ? deux jours ? une semaine ? trois semaines ?...)

      Un champ date dédié et sa gestion comme ce plugin ’modification manuelle’ ce serait bien :-)...

      Avec une boucle et le critère doublons, il suffirait d’échapper les objets dont la date est égale ou supérieure à la date de fin de publication ou date d’affichage (faut trouver le bon nom) :-p

    Répondre à ce message

  • Bonjour,

    Bravo et Merci pour cette contribution qui devrait être intégrée en standard dans Spip, dans la dist et dans la plupart des squelettes.

    L’absence d’une fonction date de modification manuelle était une lacune qui m’a toujours gêné et j’espère que sont intégration généralisée à Spip se fera rapidement.

    ... Alors qu’est intégrée depuis fort longtemps (l’origine de Spip ?) la fonction peu utile de date de rédaction antérieure...

    Bien cordialement

    FDG

    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