J'ose à peine poser ma question, mais bon ça pourrait m'épargner tant
d'effort avec quelques indications.
Sur spip16 car je ne veux pas utiliser la 17
J'aimerai rajouter un champs PRIX aux articles
Pouvoir utiliser #PRIX dans les squelettes
Pouvoir utiliser {par prix} dans les critères ........
Je fais comment ?
En contrepartie des petites indications qui me permettront de gagner du
temps, je propose une fois la chose faite de faire une publication
détaillée de ma démarche dans spip_contrib qui sera forcément utile à
d'autres développeur.
Ne serait-il pas utile d'ajouter à inc_filtres.php3 un nouveau filtre de
date (un autre) pour produire des dates au format iso-8601 ?
Ce format est notamment utilisé pour la construction des dates dans les
balises de métadonnées documentaires (Dublin Core, SCORM, LOM, CANCORE,
NORMETIC) et certains formats de fils de nouvelles (rss, rdf, atom, etc.)
Bien qu'il soit relativement simple de l'implanter dans mes_fonctions.php3,
avoir un filtre dans inc_filtres.php3, faciliterait l'échange et la
diffusion de squelettes spécifiques de métadonnées.
La fonction (inspirée de date_ical, donc rien d'original)
function date_iso_8601 ($date_heure, $minutes = 0) {
return date ("Y-m-d\TH:i:s", mktime
(heures($date_heure),minutes($date_heure)+$minutes,0,mois($date_heure),jour(
$date_heure),annee($date_heure)));
Utilisée dans une balise de fil rss
<dc:date>[(#DATE|date_iso_8601)]</dc:date>
Renvoie:
<dc:date>2003-10-15T15:42:00</dc:date>
/* remarquez le "T" */
Serait aussi utile une version courte qui ne renverrait que:
Ne serait-il pas utile d'ajouter à inc_filtres.php3 un nouveau filtre de
date (un autre) pour produire des dates au format iso-8601 ?
Ce format est notamment utilisé pour la construction des dates dans les
balises de métadonnées documentaires (Dublin Core, SCORM, LOM, CANCORE,
NORMETIC) et certains formats de fils de nouvelles (rss, rdf, atom, etc.)
Grrr.
Pourquoi est-ce que ces idiots ont eu besoin de définir un AUTRE format
de date ? Y en a combien à supporter pour communiquer avec tout le monde
??
Un bon normalisateur est un normalisateur mort !
function date_iso_8601 ($date_heure, $minutes = 0) {
return date ("Y-m-d\TH:i:s", mktime
(heures($date_heure),minutes($date_heure)+$minutes,0,mois($date_heure),jour(
$date_heure),annee($date_heure)));
Heu, il sert à quoi le $minutes dans ton code ?
Et comment on sait de quel fuseau horaire il s'agit avec ce nouveau
format de la mort qui tue (si c'était GMT j'imagine que tu utiliserais
gmdate non ?).
Que oui !
« Depuis 1947, l'ISO a publié plus de 13 700 normes internationales »
Et c'est pas fini "ostie"...
function date_iso_8601 ($date_heure, $minutes = 0) {
return date ("Y-m-d\TH:i:s", mktime
(heures($date_heure),minutes($date_heure)+$minutes,0,mois($date_heure),jour(
$date_heure),annee($date_heure)));
Heu, il sert à quoi le $minutes dans ton code ?
Aucune idée. Je n'ai fait que du copier/coller de la fonction "date_ical"
(un autre iso machin) dans inc_filtres.php3 en ajoutant des tirets et des :
aux endroits qui me semblaient appropriés et ça marche (de plus, ô horreur,
ça valide chez validator.machin.rss). Il faudrait sans doute poser la
question aux développeurs de spip: pourquoi $minutes
Et comment on sait de quel fuseau horaire il s'agit avec ce nouveau
format de la mort qui tue (si c'était GMT j'imagine que tu utiliserais
gmdate non ?).
Pourquoi ? On peut ajouter, selon le cas:
<dc:date>[(#DATE|date_iso_8601)Z]</dc:date>
ou
<dc:date>[(#DATE|date_iso_8601)-05:00]</dc:date>
Une variable globale de décallage de fuseau horaire serait ici utile.