Créer une newsletter à partir d'un RSS

Le principe est relativement simple:
  1. lire les informations de l'aggrégateur RSS (simple fichier xml)
  2. projeter le résultat dans une template
  3. Envoyer la news letter

Concrètement, je l'ai fait en Java (à partir d'un RSS que j'avais moi-même généré) pour une petite appli type portail.

La news letter était produite au format HTML par un script Velocity... Mais on peut en faire dans n'importe quel autre format ;).

L'envoi était confié à JavaMail.

Si ce type de solution t'(vous) interesse, on peut aller un peu plus loin dans les détails.



gg
 
hello grandgibus, l'idée (je pense) de alan.a comme moi serait que ça soit automatisé et simple, inscription à la newsletter dans une table et envoi hebdomadaire ou journalier d'un mail reprenant un fil RSS deja généré par dotclear (http://www.dotclear.net).
 
J'ai pigé (cerveau à 2 à l'heure) !

J'ai installé dotclear (facile, j'avais déjà tous les pré-requis en local :D), l'idée va être de faire un petit script php qui enverra lui-même les mails (fonction mail) en ayant pris soin de faire 2 select en base (un pour la liste des abonnés, l'autre pour la liste des sujets récents (même pas besoin d'utiliser l'aggrégateur ;)). Le schéma de base n'est pas compliqué.

Du coup, ça me force un peu à jeter un coup d'oeuil du coté de php (chose que je devais faire depuis un moment déjà)... et comme je branle en réunion toute la journée en ce moment (tiens, un client oueb en velocity)... et que j'ai pas sommeil.... tous les espoirs sont permis.
 
  • J’aime
Réactions: alan.a
Depuis le temps que je me disais qu'il fallait que je jette un oeuil à php... Maintenant c'est fait ;).

Voici un premier jet... Comme c'est un premier jet, je suis certain que les puristes du php auront un tas de remarques (bienvenues) à formuler. Pour ma part, j'y vois déjà une quantité d'améliorations à y apporter... Le but étant de montrer le principe !

Par contre, il conviendra de renommer l'extension du fichier ainsi que de positionner les diverses variables dans le script (au début).

Je n'ai malheureusement pas pu tester l'envoi de mail à partir de mon portable (et de mon FAI) :( mais je ne vois pas pourquoi ça poserait problème.


Tenez-moi au courant si ça a pu vous avancer un peu, merci.
 
  • J’aime
Réactions: bengilli
Alors...

J'ai testé ça peut etre un peu rapidement, en tout cas ca fonctionne très bien chez moi. J'ai modifié quelque peu le formatage du message envoyé (défauts constatés, pas de retour à la ligne entre les titres des billets et problème avec les mails aux format HTML, j'ai préféré rester en texte simple).

Le seul problème est que ça appelle les adresses email des utilisateurs du blog, alors que la mailing list était - dans mon idée - plutot destinée aux lecteurs. L'idéal serait de pouvoir saisir dans un formulaire les adresses des utilisateurs inscrits.

A part cela, ça remplit très bien son office ;)
 
Oh pinaise.... du php avancé:
  • un formulaire de saisie pour récolter les adresses des lecteurs
  • une insertion en base pour constituer la liste des abonnés

Restera alors à taper dans la bonne table (celle justement constituée ;)) dans le script d'envoi.


T'en veeeeuuuuxxx ?



:D
 
avec plaisir, histoire de boucler la boucle :p

d'ailleurs au vu des requêtes sur les forums de Dotclear, ton plug-in pourrait rencontrer un succès certain, ou un certain succès ;)

Coté CNIL, ca va, c'est pour un site de famille :p
 
  • J’aime
Réactions: GrandGibus
En y réflechissant à deux fois, et suivant les conseils éclairés d'un geek (eddyrun si tu nous lis...)... la fonctionalité n'est pas si simple que ça.

Pour bien faire, il faut:
  1. insérer un lien dans le blog genre inscrivez-vous à la newsletter
  2. la validation du formulaire a pour effet de rajouter un utilisateur en base (avec un status temporaire)
  3. Envoyer un mail au nouvel inscrit avec une URL encodée pour la validation (et l'activation)
  4. préparer aussi de quoi désinscrire un abonné

mais y'a pas non plus de quoi casser 3 pattes à un canard... ça va donner de quoi combler les heures creuses :D
 
Hello,

Je viens d'installer tes scripts en les adaptant mais semble t'il il manque le fichier database.inc.php

Le serveur me retourne l'erreur suivante :

Bloc de code:
Warning: main(database.inc.php): failed to open stream: No such file or directory in /var/www/free.fr/7/9/famille.andry/newsletter/do_subscribe.php on line 12

Fatal error: main(): Failed opening required 'database.inc.php' (include_path='/var/www/free.fr/7/9/famille.andry/include:.') in /var/www/free.fr/7/9/famille.andry/newsletter/do_subscribe.php on line 12

Je précise que la table newsletter a éété correctement générée par la commande SQL
 
en créant un include nommé database.inc.php à la main ça fonctionne.

Note si tu souhaites poursuivre, le fichier d'envoi de la newsletter mail.php n'utilise pas les même noms de variables pour la connection à la base et ne fait pas appel à l'include database.inc.php.

Je poursuis mes tests
 
Nickel :up:

Note que les scripts n'ont rien à voir avec un vrai plug-in qui pourrait être proposé à DotClear... c'est de la pure bidouille :D.

Disons, qu'il faudrait les nettoyer et faire une intégration beaucoup plus poussée pour que ce soit proposé ! (Cependant, ils peuvent s'en inspirer grandement ;))... y'a pas de copyright :D
 
  • J’aime
Réactions: bengilli