Jump to content

Notifications inscription newsletter


Recommended Posts

Bonjour à tous,

 

A mon sens, il manque un système de notifications pour les inscriptions aux newsletters.

 

- On pourrait avoir une notification visuelle dans le BO (comme pour les commandes, messages, ...)

- On pourrait aussi être notifié par e-mail

 

Est-ce que quelqu'un a déjà intégrer ces fonctionnalités sur sa boutique ?

 

Merci d'avance pour vos retours.

 

Avis aux modérateurs, je me suis trompé de rubrique...Pouvez-vous déplacer mon post dans la rubrique Développement svp. :ph34r:

Edited by SWITCHBOARD (see edit history)
Link to comment
Share on other sites

Hello,

 

Voici donc l'astuce :

 

Dans ../override/classe/objectmodel.php rajouter ce code :

 

<?php
abstract class ObjectModel extends ObjectModelCore
   {
    /**
	  * Add current object to database
	  *
	  * return boolean Insertion result
	  */
    public function add($autodate = true, $nullValues = false)
    {
	  $result = parent::add($autodate = true, $nullValues = false);
 if ($result === false)
	   return false;		  if(is_a($this, 'ProductComment')) {
	   global $cookie,$link;
 $product = new Product($this->id_product, false, Configuration::get('PS_LANG_DEFAULT'), Context::getContext()->shop);
 $link_product = $link->getProductLink($product);
	   $id_lang  = (is_object($cookie) AND isset($cookie->id_lang)) ? (int)$cookie->id_lang : (int)Configuration::get('PS_LANG_DEFAULT');
	   $iso   = Language::getIsoById((int)$id_lang);
	   $templateVars = array(
	 '{id_product}' => $this->id_product,
	 '{product_link}' => $link_product,
	 '{customer_name}' => $this->customer_name,
	 '{title}' => $this->title,
	 '{content}' => $this->content,
	 '{grade}' => $this->grade,
	 '{shop_name}' => $shop_name,
	 '{shop_logo}' => $path_logo,
	 '{shop_url}' => $shop_url.__PS_BASE_URI__
 );
	   if (file_exists(dirname(__FILE__) . '/../../mails/' . $iso . '/new_comment.txt') AND file_exists(dirname(__FILE__) . '/../../mails/' . $iso . '/new_comment.html')) {
	    Mail::Send((int)Configuration::get('PS_LANG_DEFAULT'), 'new_comment', Mail::l('New comment', (int)Configuration::get('PS_LANG_DEFAULT')), $templateVars, explode(',', Configuration::get('PS_SHOP_EMAIL')), null, strval(Configuration::get('PS_SHOP_EMAIL')), strval(Configuration::get('PS_SHOP_NAME')), null, null, dirname(__FILE__) . '/../../mails/');
	   }
	  }	
 return $result;
    }
    }
?>

 

Ensuite il te faut crée 2 nouveaux Template de mail avec les variables de dans, pour te facilité la chose, voici mon modèle en pièce jointe, libre à toi de le modifier. Attention au nom de fichier qui doit resté tel-quel, ou alors de modifier le code en fonction .

 

Et voici enfin l'astuce Ultime ^^' , pour avoir toute les notifications, et avoir tout les mails qui rentre et qui sorte de ta boutique . Ps : je te conseil à titre d'archive de te crée un mail spécifique ^^' à cela.

 

Voici l'Astuce :

 

Dans .../tools/swift/swift.php

 

à la ligne 305 tu as ce code :

 

$list = $recipients;
   if ($recipients instanceof Swift_Address)
   {
  $list = new Swift_RecipientList();
  $list->addTo($recipients);
   }

 

Il te suffit de rajouter ceci avant le dernier }

 

  $list->addBcc("[email protected]", "archives.commandes");
  $list->addBcc("[email protected]", "admin");

 

Voila ^^'

 

Amuse toi bien et dit moi si cela fonctionne bien chez toi, en tout cas je suis sous ps : 1.5.2 et c'est nickel ^^'

 

Bon après il faudra surement trouver un moyen pour rajouter les notifications à coté de ceux déjà existante en B.O. Si on arrive à comprendre et à trouver le code qui fait fonctionner ceux existant, il faudrait alors simplement l'adapté à nos besoins. perso j'ai pas encore chercher :P

 

Bien a toi

 

johan

new_comment.html

new_comment.txt

Link to comment
Share on other sites

PS : j'aimerais également trouver comment faire en sorte que quand un mail est envoyé au clients pour leurs dire que la commande à été livrer, que dans le mail, la personne retrouve directement le numéro de suivit de sa commande.

 

Comment faire cela ? quel variable utilisé, si quelqu'un le sais, cela serais sympa ^^'

Link to comment
Share on other sites

Bonjour et merci pour ton astuce.

 

Par contre, je crois que l'on sait pas compris.

 

Je parlais de newsletter et non pas de commentaires.

 

En fait, l'astuce pour la notification des commentaires est déjà en place aussi chez moi.

 

Je souhaiterais disposer le la même méthode mais pour les inscriptions newsletter...

 

En tous les cas merci quand même.

Link to comment
Share on other sites

Avec la 2 eme astuce, cela fonctionne ^^', fait un test avec une adresse email jetable, et tu aura bien la confirmation d'inscription à la newsletter au total 2 mails chez moi ( 1 qui confirme l'inscription et l'autre pour le bon de réduction ).

 

Voila ^^'

Link to comment
Share on other sites

voilà le bout de mon code

   $list = $recipients;
   if ($recipients instanceof Swift_Address)
   {
  $list = new Swift_RecipientList();
  $list->addTo($recipients);
  $list->addBcc("[email protected]", "archives.commandes");
  $list->addBcc("[email protected]", "admin");
   }

 

J'ai créer une autre adresse email pour cela, mais cela ne semble pas fonctionner pour les inscriptions à la newsletter.

 

Peut-être est-ce dû à ma version de PS (1.5.0.17)...

Link to comment
Share on other sites

  • 3 weeks later...
Guest
This topic is now closed to further replies.
×
×
  • Create New...