IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

EDI, CMS, Outils, Scripts et API PHP Discussion :

[Newsletter] Créer une newsletter HTML mais dynamique


Sujet :

EDI, CMS, Outils, Scripts et API PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    581
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 581
    Par défaut [Newsletter] Créer une newsletter HTML mais dynamique
    Bonjour,

    J'ai mis en place un petit système de newsletter (fichier html) envoyée aux membres par une boucle, classique, et fonctionnement impeccable.

    Mais ma newsletter étant un fichier HTML, à l'heure actuelle je la modifie directement dans le code pour réaliser les suivantes. Comment faire pour qu'elle "se crée" automatiquement à partir d'un contenu de base de donnée inclus dans un gabarit ? Car je suppose que les newsletters qu'on reçoit quotidiennement ne sont pas créées manuellement chaque jour ?

    Le problème, c'est qu'un tel fichier devient du PHP !...
    Une idée pour me mettre sur la voie ? Merci d'avance.

  2. #2
    Membre éclairé Avatar de Sayrus
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    899
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 899
    Par défaut
    Bonjour,

    Il n'y a pas vraiment de problème...

    Tu créers un modèle standard générique que tu enregistres quelque part sur ton serveur genre : model.html

    Ensuite, dans l'administration lors de la création d'une nouvelle newsletter, tu charges dans ton éditeur WYSIWYG (tinymce, ckeditor, etc.) le fichier model.html via la fonction file_get_contents($adresse_du_modele)

    Ensuite, tu modifies le contenu... et pour sauvergarder tu enregistres dans une table mysql le contenu de chaque newsletter avec un identifiant différent ou tu enregistre avec un identifiant différent au format html:

    Si c'est ta première newsletter, alors newsletter-1.html, newsletter-2.html, etc.

    Par contre, penses à utiliser sendmail si tu envoies à des milliers de contact et ajoutes une tâche cron pour envoyer tes mails par petit paquets toutes les X minutes...

  3. #3
    Expert confirmé

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Par défaut
    file_get_contents récupère le fichier tel qu'il est, si y'a du php dedans il va apparaitre, a moins de le lancer via http mais les variable ne seront pas pris en compte, pour récupèrer le contenu et interprète par PHP il faut utiliser le buffer

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ob_start();
    require 'newletter.php';
    $html = ob_get_clean();
    ou si il est accessible

  4. #4
    Membre éclairé Avatar de Sayrus
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    899
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 899
    Par défaut
    Mais dans le modèle HTML, pourquoi y aurait-il du PHP? Le php servira sur base du modèle html de créer les newsletters souhaitées mais dans le modèle il ne doit pas y avoir de PHP...

  5. #5
    Expert confirmé

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Par défaut
    Citation Envoyé par Sayrus Voir le message
    Mais dans le modèle HTML, pourquoi y aurait-il du PHP? Le php servira sur base du modèle html de créer les newsletters souhaitées mais dans le modèle il ne doit pas y avoir de PHP...
    bah pourquoi pas ? imagine un template de newletter avec un article de blog, tu ferais comment pour envoyer le mail ?

  6. #6
    Membre éclairé Avatar de Sayrus
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    899
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 899
    Par défaut
    Ha ok, alors on parle de créer une newsletter sur base d'articles existants...

    En fait il y a 2 possibilités, la première que j'ai cité, une template html chargé dynamiquement avec un contenu bidon modifier manuellement lors de chaque nouvelle newsletter mais où le canevas est déjà présent.

    Ou alors plus dans ton cas, il faut créer un système de newsletters dynamiques:

    Pour cela il faut, créer un fichier header.html, footer.html, model-article.html

    Une fois les fichiers regroupés, ça forme la newsletter...

    Tu créer tes paramètres HTML démarquer par des balises de ton choix exemple: [UNSUBSCRIBE], [EMAIL], [NAME], [DATE], [CONTENT], [TITLE], etc.

    Ensuite, une fois ta template créée, il faut créer le méchanisme php avec le listing de tous les articles du site, et chaque article coché sera ajouté dans ta newsletter...

    Par exemple, une fois les articles choisi et les préférences de la newsletter ajoutées dans la db, tu génère ton fichier newsletter-xx.html

    et tes articles seront ajoutés les uns en dessous des autres dans ta newsletter avec le style css et HTML que tu auras défini dans model-article.html.

    model-article.html

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <div class="article">
    <h1>[TITLE]</h1><div class="date">[DATE]</div>
    [CONTENT]
    </div>
    Note que les classes ne sont pas indispensables, en effet, pour une bonne newsletter, les styles doivent être inclus dans l'attribut "style" de chaque tag et non chargé via CSS.

    Tu l'auras compris, les paramètres entre [...] sont remplacer avec une fonction PHP du style str_replace('[TITLE]', $row->title);

    etc.

    C'est vraiment chouette de créé un système de newsletters...

    Je sais de quoi je parle

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment créer une newsletter en HTML ?
    Par noarno dans le forum E-Mailing
    Réponses: 4
    Dernier message: 25/07/2007, 12h31
  2. [Newsletter] Créer une newsletter facile d'accès
    Par alex12 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 4
    Dernier message: 20/06/2007, 08h08
  3. Créer une newsletter facile d'accès
    Par alex12 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 29/05/2007, 19h37
  4. Comment créer une newsletter
    Par pierrot10 dans le forum E-Mailing
    Réponses: 13
    Dernier message: 01/03/2006, 01h54
  5. [Mail] Créer une Newsletter
    Par pierrot10 dans le forum Langage
    Réponses: 4
    Dernier message: 22/02/2006, 20h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo