Jump to content

Aggiungere una variabile nelle mail del clente.


Recommended Posts

Buongiorno, a tutti

nel modulo di pagamento: ps_wirepayment e nel file: ps_wirepayment.php ho creati una variabile che mi effettua un calcolo di una percentuale dal totale.

Adesso ho necessità di riportare questa variabile anche nelle mail che Prestashop invia al cliente, ma purtroppo non riesco a far visualizzare in queste mail il valore, come posso fare?

Ho visto che è possibile utilizzare gli arrey in questa porzione di codice: extra_mail_vars = array   ma non so come scriverlo correttamente.

Link to comment
Share on other sites

2 ore fa, Haumea dice:

$extraInfo = array() ;

$extraInfo['percentage'] = tuavariabile

$extra_mail_vars = $extraInfo. 

Poi nel file tpl della mail dovresti avere a disposizione la variabile. 

Ciao grazie per la tua risposta, ma queste righe di codice dove vanno posizionate nel codice ps_wirepayment? Perchè mi da errore 500...

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

Ciao, come intendi?

Il codice l'ho scritto io, rende l'idea di come vada risolto il problema. La soluzione migliore e' un override della classe PaymentOption, oppure modifica direttamente la classe. Dovresti avere a disposione il totale dell'ordine all'interno della classe PaymentOption. Il codice inseriscilo sopra alla funzione che manda la mail.

  • Like 1
Link to comment
Share on other sites

2 ore fa, Haumea dice:

Ciao, come intendi?

Il codice l'ho scritto io, rende l'idea di come vada risolto il problema. La soluzione migliore e' un override della classe PaymentOption, oppure modifica direttamente la classe. Dovresti avere a disposione il totale dell'ordine all'interno della classe PaymentOption. Il codice inseriscilo sopra alla funzione che manda la mail.

Credo che io non mi sia spiegato, oppure non ho capito di quello che mi indichi di fare, io sostanzialmente ho bisogno che la variabile che ho creato nel file ps_wirepayment.php e che contiene un calcolo in percentuale, possa comparire anche nel template della mail che arriva al cliente.

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

10 ore fa, Haumea dice:

Allora va inserito direttamente sopra alla funzione validareOrder. È quella funzione che manda la mail al cliente. 

Presumo che la posizione da te indicata sia nel file in root/classes/PaymentModule.php, e li non è possibile mettere quel testo mi da errore 500, se mi puoi guidare nello specifico,te ne sarei grato.

Link to comment
Share on other sites

16 minuti fa, Haumea dice:

ps_wirepayment.php

Aggiunti solo 2 righe, alla terza tua riga non trovo corrispondenza ...

 public function getTemplateVarInfos()
    {
        $cart = $this->context->cart;
        $total = sprintf(
            $this->trans('%1$s (tax incl.)', array(), 'Modules.Wirepayment.Shop'),
            Tools::displayPrice($cart->getOrderTotal(true, Cart::BOTH))
        );
        //creati da me
       $extra_vars = array();
       $extra_vars['acconto'] = $acconto;   //fine

 

pertanto non va...

 

Edited by samdoub (see edit history)
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...