Carnet Wiki

Nombre de jours écoulés depuis la publication

Version 3 — Juillet 2023 — 82.64.xx.xx

Avec un filtre |age

function age(string $date): int {
    $date = new \DateTimeImmutable($date);
    // Si pas d’heure, mettre 20h (if optionnel)
    if ($date->format('His') === '000000') {
        $date = $date->setTime(20, 0);
    }
    return (new \DateTimeImmutable())->diff($date)->days;
}

<BOUCLE_art(ARTICLES){!par date}{0, 10}>
- #ID_ARTICLE - Nb jours : [(#DATE|age)]<br />
</BOUCLE_art>

Avec un critère {mon_age_relatif} + balise #MON_AGE_RELATIF

Snipet à placer dans squelettes/mes_fonctions.php

&lt;?<div class="base64" title="PGRpdiBjbGFzcz0icHJlY29kZSI+PHByZSBjbGFzcz0ic3BpcF9jb2RlIHNwaXBfY29kZV9ibG9jayIgZGlyPSJsdHIiIHN0eWxlPSJ0ZXh0LWFsaWduOiBsZWZ0OyI+PGNvZGU+cGhwQEBAU1BJUF9ESUZGMUBAQCBAQEBTUElQX0RJRkYxMkBAQHBocEBAQFNQSVBfRElGRjFAQEAgDQovKioNCiAqIHttb25fYWdlX3JlbGF0aWZ9IG91IHttb25fYWdlX3JlbGF0aWYgZGF0ZV9tb2RpZn0NCmJ5IE1hcmNpbWF0DQogKi8NCmZ1bmN0aW9uIGNyaXRlcmVfbW9uX2FnZV9yZWxhdGlmX2Rpc3QoJGlkYiwgJmFtcDskYm91Y2xlcywgJGNyaXQpIHsNCiAgICAkYm91Y2xlID0gJmFtcDskYm91Y2xlc1skaWRiXTsNCiANCiAgICAkdGFibGUgPSAkYm91Y2xlLSZndDtzaG93Ow0KICAgICRwYXJhbXMgPSAkY3JpdC0mZ3Q7cGFyYW07DQogICAgaWYgKCRwYXJhbXMpIHsNCiAgICAgICAgJGNoYW1wID0gcmVzZXQoJHBhcmFtcyk7DQogICAgICAgICRjaGFtcCA9ICRjaGFtcFswXS0mZ3Q7dGV4dGU7DQogICAgfSBlbHNlIHsNCiAgICAgICAgJGNoYW1wID0gJHRhYmxlWydkYXRlJ10gPz8gJyc7DQogICAgfQ0KICAgIGlmIChlbXB0eSgkdGFibGVbJ2ZpZWxkJ11bJGNoYW1wXSkpIHsNCiAgICAgICAgZXJyZXVyX3NxdWVsZXR0ZSgmcXVvdDtDcml0ZXJlIG1vbl9hZ2VfcmVsYXRpZiBzYW5zIGNoYW1wIGRhdGUgdmFsaWRlLiZxdW90OywgJGJvdWNsZSk7DQogICAgfQ0KICAgICRkYXRlX2NvbXBhcmUgPSAmcXVvdDsnXCZxdW90OyAuIG5vcm1hbGlzZXJfZGF0ZSgmcXVvdDsgLg0KICAgICAgICBjYWxjdWxlcl9hcmd1bWVudF9wcmVjZWRlbnQoJGlkYiwgJGNoYW1wLCAkYm91Y2xlcykgLg0KICAgICAgICAmcXVvdDspIC4gXCZxdW90OycmcXVvdDs7DQogICAgJGRhdGVfb3JpZyA9ICRib3VjbGUtJmd0O2lkX3RhYmxlIC4gJy4nIC4gJGNoYW1wOw0KICAgICRhcyA9ICdtb25fYWdlX3JlbGF0aWYnOw0KIA0KI3Zhcl9kdW1wKGNhbGN1bGVyX3BhcmFtX2RhdGUoJGRhdGVfY29tcGFyZSwgJGRhdGVfb3JpZykpOw0KICAgICRib3VjbGUtJmd0O3NlbGVjdFtdID0gJygnIC4gY2FsY3VsZXJfcGFyYW1fZGF0ZSgkZGF0ZV9jb21wYXJlLCAkZGF0ZV9vcmlnKSAgLiAmcXVvdDspIEFTICRhcyZxdW90OzsNCn0NCiANCi8qKg0KICogI01PTl9BR0VfUkVMQVRJRiA9Jmd0OyA3DQogKiAjTU9OX0FHRV9SRUxBVElGKiA9Jmd0OyA3LjEyMzQNCiAqIEBwYXJhbSBQaWxlICRwDQogKiBAcmV0dXJuIFBpbGUNCiAqLw0KZnVuY3Rpb24gYmFsaXNlX01PTl9BR0VfUkVMQVRJRl9kaXN0KCRwKSB7DQogICAgJHAgPSByaW5kZXhfcGlsZSgkcCwgJ21vbl9hZ2VfcmVsYXRpZicsICdtb25fYWdlX3JlbGF0aWYnKTsNCiAgICBpZiAoISRwLSZndDtldG9pbGUpIHsNCiAgICAgICAgJHAtJmd0O2NvZGUgPSAmcXVvdDtmbG9vcigmcXVvdDsgLiAkcC0mZ3Q7Y29kZSAuICZxdW90OykmcXVvdDs7DQogICAgfQ0KICAgIHJldHVybiAkcDsNCn1AQEBTUElQX0RJRkY4QEBADQo8L2NvZGU+PC9wcmU+PC9kaXY+"></div> 
? >

Dans votre squelette :

- #MON_AGE_RELATIF Dans votre squelette  :
#MON_AGE_RELATIF arrondi le nombre de jours sans virgules ( floor ())
- #MON_AGE_RELATIF * renvoie un nombre flottant [floor ()]
#MON_AGE_RELATIF* renvoie un nombre virgulé

spip 
&lt; BOUCLE_1(ARTICLES){mon_age_relatif}{0 &lt;cadre  class='spip '>
 &lt;BOUCLE_1(ARTICLES){mon_age_relatif}{0 , 10}>
#ID_ARTICLE - #MON_AGE_RELATIF - #MON_AGE_RELATIF*<br />
&lt;/BOUCLE_1>
 &lt;/cadre >