Dates d’un site pour un copyright automatique (ou autre)

Une contrib très courte pour faire apparaitre les dates extrêmes d’un site.
Cette contribution n’a pas plus lieu d’être depuis Spip 3 qui propose cette fonction par défaut dans les squelettes distribués.

Les solutions existantes

Philippe Bessière demandait une boucle pour obtenir :
2007 © mon site – Tous droits réservés
puis
2007-2008 © mon site – Tous droits réservés

Le plus simple est de faire :

2007[-(#DATE|>{2008}|?{#DATE,''}|annee)] © mon site - Tous droits réservés

ça fonctionnera à partir de 2008 et moins d’une seconde

wouarf52 propose aussi le simple php, qui sera recalculé à chaque affichage :

2007-<?php echo date("Y"); ?> © mon site - Tous droits réservés

Variante en boucles pures

Je propose d’aller plus loin, sans php et avec des boucles pour obtenir le calcul automatique des première et dernière année.

<BOUCLE_copy(ARTICLES) {par date} {0,1}>
[(#DATE|annee)][-(#ENV{date}|>{#DATE}|?{#ENV{date},''}|annee)] © mon site - Tous droits réservés
</BOUCLE_copy>

Quelques remarques :

  • 1) pour un site reprenant des articles antérieurs, il faut utiliser la balise #DATE_REDAC (pour la première date) pour obtenir 1954-2007 © mon site. Lors de la saisie d’articles plus anciens, la ligne de copyright est aussi modifiée.
<BOUCLE_copy(ARTICLES) {par date_redac} {0,1}>
[(#DATE_REDAC|annee)][-(#ENV{date}|>{#DATE}|?{#ENV{date},''}|annee)] © mon site - Tous droits réservés
</BOUCLE_copy>
  • 2) pour des articles antidatés avec des articles datés de 1996 pour un site créé en 2002, il affiche 1996-2006, ce qui n’est pas un mal (on peut prendre une autre date que celle de l’article ; une site par exemple) ;
  • 3) pour un site créé en 2006 — et sans articles antidatés — il affiche 2006-2006 jusqu’au 1er janvier 2007. Il faut utiliser alors la première boucle de la contrib pour éviter celà.

C’est pareil pour les Copyleft...

D’autres utilisations

On peut imaginer plein d’autres utilités à cette boucle.

Attention, pour un site où l’on veut aussi utiliser les date de rédaction pour connaitre les dernières contributions, il faudra rajouter une boucle :

<BOUCLE_finCopy(ARTICLES) (!par date_redac} {0,1}>
[-(#DATE_REDAC|annee)]
</BOUCLE_finCopy>

pour remplacer :
[-(#ENV{date}|>{#DATE}|?{#ENV{date},''}|annee)]
dans la boucle.

La boucle telle qu’elle est incluse dans le footer.html de /squelettes-dist de Spip 3.

<BOUCLE_annee(ARTICLES){par date}{0,1}>[(#DATE|annee|!={#VAL{Y}|date}|oui)[(#DATE|annee)]]</BOUCLE_annee>-</B_annee>[(#DATE|annee) ]

updated on 2 October 2019

Discussion

Aucune discussion

Comment on this article

Who are you?
  • [Log in]

To show your avatar with your message, register it first on gravatar.com (free et painless) and don’t forget to indicate your Email addresse here.

Enter your comment here

This form accepts SPIP shortcuts {{bold}} {italic} -*list [text->url] <quote> <code> and HTML code <q> <del> <ins>. To create paragraphs, just leave empty lines.

Add a document

Follow the comments: RSS 2.0 | Atom