Dernière mise à jour : 30/01/2017 à 11h14
Table des matières
Introduction
La Newsletter est un des modules de PHPBoost qui permet de générer des mails automatiques contenant des informations liées à l'activité de votre site.
Nous allons voir ici comment personnaliser une Newsletter en lui ajoutant une ligne de copyright en bas de page:
tout va se passer dans le dossier /newsletter
----
le fichier common.php
ouvrir le fichier: /newsletter/lang/french/common.php et copier cette ligne en dessous de la ligne 113 (ou environ):
Code PHP :
$lang['copyright_newsletter'] = '<div style="color:#0000FF;font-style:italic;font-size:14px;text-align:center;display:block;"><a href="http://votre_url_de_site.xx"> © ici_votre_copyright</a></div>';
La gestion des mails, avec les différents opérateurs (gmail, free, orange ...) fait que les feuilles de style css externes ne sont pas ou mal gérées donc on passera la mise en forme dans le fichier common.php. Dans cet exemple, la ligne de copyright sera centrée en bas de page, de couleur bleue, en italique de taille 14px et en forme de lien qui renverra vers votre site. Il faudra faire de même dans le fichier /newsletter/lang/english/common.php pour la version anglaise.
----
le fichier AbstractNewsletterMail.class.php
ouvrir le fichier /newsletter/services/AbstractNewsletterMail.class.php et copier ces lignes en dessous de la ligne 82:
Code PHP :
public function add_copyright() { return $this -> lang['copyright_newsletter']; }
pour obtenir ceci en fin du fichier:
Code PHP :
public function add_unsubscribe_link() { return ' [url=' . NewsletterUrlBuilder::unsubscribe() -> absolute() . ']' . $this -> lang['unsubscribe_newsletter'] . '[/url]'; } public function add_copyright() { return $this -> lang['copyright_newsletter']; } } ?>
Ici, on vient ajouter une nouvelle fonction qui va retourner le contenu de notre variable de langue définie plus haut.
----
le fichier BBCodeNewsletterMail.class.php
ouvrir le fichier /newsletter/services/BBCodeNewsletterMail.class.php et copier cette ligne en dessous de la ligne 40:
Code PHP :
$mail_contents .= $this -> add_copyright();
pour obtenir ceci:
Code PHP :
public function send_mail($subscribers, $sender, $subject, $contents) { $mail_contents = '<html><head><title>' . $subject . '</title></head><body>'; $mail_contents .= $this -> parse_contents($contents) . $this -> add_unsubscribe_link(); $mail_contents .= $this -> add_copyright(); $mail_contents .= '<script></script><script></script><script></script><script></script><script></script><script></script><script></script><script></script><script></script><script></script></body></html>'; parent::send_mail($subscribers, $sender, $subject, $mail_contents); }
ici on fait appel à notre nouvelle fonction pour générer l'ajout de notre variable de langue dans le corps du mail.
----