je veux tenter de résoudre un pb posé depuis un moment dans la discussion du plugin newsletter depuis septembre 2024 et sans solution.
La doc décrit la possibilité d’utiliser dans le TITRE de la newsletter une variable de contexte, dont la date de génération et de lui appliquer un filtre de date… ce qui permettrait d’avoir un titre genre « les nouveautés du 13 septembre », qui soit dans la nexsletter générée et idéalement stockée dans la table des newsletters…
sauf que ça ne fonctionne dans le titre… (ca fonctionne dans le chapeau ou le texte)
parcourant le code du plugin, mais je n’arrive pas à identifier où cela devrait se faire…
Peux tu préciser aussi tout le reste : ajouter un lien vers la discussion dont tu parles, vers la doc dont tu parles, éventuellement vers le code que tu dit avoir déjà examiné…
Je le fais régulièrement.
Je viens de retester : [(#ENV{date}|affdate)] dans le titre de l’infolettre me génère bien la date du jour dans l’objet du mail.
merci… donc peut-être si ca marche ailleurs c’est plutôt dans mon gabarit ?
mais j’ai le même résultat avec les squelettes de base newsletter, ceux de SC…
Mon environnement SPIP 4.4.6 , SoyezCréateurs Rebirth 6.5.0 Newsletter 3.2.1
Gabarit proposé par SC, retouché à la marge
en mettant dans le titre de la newsletter « La lettre hebdo du Vénissian [(#ENV{date}|affdate)] » j’obtiens dans la liste des lettres ?exec=newsletters:
oui j’ai essayé avec plusieurs balises dates
avec juste une variable @date@ ca fonctionne, mais il n’y a pas de possibilité de filtre, donc c’est pas terrible format date, heure…
de fait, une balise n’est pas interprétée dans le titre (elle l’est dans le chapeau ou le texte…)
Ha ça c’est normal, la balise de date n’est évaluée que lors de la génération du HTML par le plugin newsletters. Chez moi, par exemple, ça donne aussi « Lettre xxx du [(#ENV{date}|affdate)] », mais si je fais voir en ligne sur la newsletter j’ai bien une date
Bonjour
Deux observations par chez moi (SPIP 4.4.6, Newsletters 3.2.1, PHP 8.2.17) :
Quand je mets Mon Titre - [(#ENV{date}|affdate)] dans le champ TITRE de l’infolettre, à la lecture de l’infolettre reçue le titre affiché est : Mon Titre - [(#ENVdate|affdate)].
Dans tmp\cache\newsletters je vois aussi que les { } qui encadrent « date » ont été supprimées : Mon titre - [(#ENVdate|affdate)]
Par contre, cela fonctionne si je place [(#ENV{date}|affdate)] dans le head du squelette de mon infolettre : <title>[(#TITRE|textebrut)] - [(#ENV{date}|affdate)]</title>
Quand je place [(#ENV{date}|affdate)] quelque part dans le « body » de l’infolettre, la date s’affiche bien mais :
le clic pour voir l’infolettre dans un navigateur affiche ensuite non pas la date d’envoi de l’infolettre, mais la date de la lecture de cette infolettre dans le navigateur.
dans mon courrielleur (Thunderbird), pas de pb la date affichée dans le body de l’infolettre reste celle de l’envoi.
merci, j’ai lu et je comprends que le pb était d’avoir la bonne date, selon qu’il y a ou pas une date_redac… et que c’est corrigé dans la 3.2.0.
cela dit, mon problème, (et de Helem), ce n’est pas le choix de la date, mais le fait d’interpréter ou pas la balise avec filtre affdate… dans le TITRE de la newsletter… ce que n’évoque pas cédric pour qui c’est interprété…
Dans <title>Mon titre [(#ENV<i>date</i>|affdate)]</title> on voit qu’un zélé code typographe a remplacé les { ... } utilisés pour #ENV par des italiques