Jump to content

Email sur la page order-confirmation.php


Recommended Posts

Bonjour,

pour l'affiliation à une régie publicitaire, celle-ci me demande d'installer un script de tracking.

Grâce à un module que j'ai trouvé dans la partie anglophone du site (affiliatetracking_0.2), j'ai réussi à obtenir le orderId et le total de la commande. Mais comme vous l'aurez compris, j'ai besoin de l'email du client et je n'arrive pas à l'obtenir.

 

Dans le module affiliatetracking, il y a cette fonction :

 

public function hookOrderConfirmation($params)
{
global $smarty;

$order = $params['objOrder'];
$currency = $params['currencyObj'];
$smarty->assign(array(
'orderId' => $order->id,
'total' => $order->total_paid - $order->total_shipping,
'totalPaid' => $order->total_paid,
'totalProducts' => $order->total_products,
'totalCommision' => $order->total_products * 10 / 100,
'currency' => $currency->iso_code
));

 

J'ai donc bêtement ajouté :

'email' => $customer->email

 

mais ça ne fonctionne pas.

 

J'ai aussi essayé de modifier le fichier order-confirmation.php en ajoutant ceci :

 

$smarty->assign(array(
'email' => $customer->email
));

 

Mais rien à faire. Je me tourne donc vers vous puisque je n'ai pas trouvé la solution sur le forum.

 

Je vous remercie d'avance.

Link to comment
Share on other sites

Bonjour,

 

A voir si l'objet Customer est crée. Si oui, il est possible de piocher dedans. Si non, il faut ajouter une petite fonction qui ira chercher le mail en BDD en tenant compte de l'ID customer en cours dans le order.

 

Voila les grandes lignes.

Link to comment
Share on other sites

Bonjour,

 

merci de votre réponse. En effet, je n'avais pas pensé à faire une recherche dans ma base de données en fonction de l'identifiant de la commande. Mais finalement, j'ai eu la solution sur la partie anglophone du forum, donc je la poste ici :

 

il faut ajouter :

 

$customer = new Customer($order->id_customer);

 

 

ce qui donne :

 

public function hookOrderConfirmation($params)
{
global $smarty;

$order = $params['objOrder'];
$customer = new Customer($order->id_customer);
$currency = $params['currencyObj'];
$smarty->assign(array(
'orderId' => $order->id,
'total' => $order->total_paid - $order->total_shipping,
'totalPaid' => $order->total_paid,
'totalProducts' => $order->total_products,
'totalCommision' => $order->total_products * 10 / 100,
'currency' => $currency->iso_code,
'email' => $customer->email
));

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...