Tilpas mails baseret på fragtmetoden

Sådan ændrer du ordlyden på dine mails ud fra, hvilken fragtmetode brugeren har valgt.

Morten Vadskær avatar
Skrevet af Morten Vadskær
Opdateret over en uge siden

I Shoporama har du forskellige skabeloner til dine transaktionelle mails. Der er bl.a. en mail med "din ordre er nu sendt". Men er en af dine fragtmuligheder "afhentning", så vil det jo ikke give mening, at man sender folk en mail med teksten om at "din ordre er sendt", når de selv har været og hente ordren.

Så derfor kan du ønske at ændre ordlyden i mailen, hvis folk har valgt "afhentning". For at gøre dette, skal du have en udvikler til at ændre din mailskabelon.

Du skal gøre to ting:

  1. Finde ID'en på din fragtmetode for afhentning

  2. Ændre i html-filen for mailen.

For at finde ID'en på den fragtmetode, du vil arbejde med, skal du gøre følgende.

  1. Gå i Shoporama og klik på tandhjulet

  2. Klik på fanebladet "Fragt"

  3. Ud for fragtmuligheden du vil målrette, kan du klikke på "Rediger". Nu ser du, at du bliver sendt til en side med en URL, der ligner denne her:

https://www.shoporama.dk/admin/da/5842/shipping/edit/7664

Det er de sidste tal, vi skal have fat i. I tilfældet her 7664.

Nu skal du have fat i din html-fil. Er det mailen med at ordren er sendt, så er det order_sent.html, du skal have fingre i. Her skal du egentligt bare lave en if-sætning. Det betyder, du siger "hvis det er fragtmetoden med dette ID, så skal man skrive denne tekst. Ellers skriv en anden tekst". Kodemæssigt ser det blot sådan ud (her skal du dog ændre 7664 til det ID du fandt i pkt. 1 herover.

<{if $order}>

<{assign var="shipping" value=$order->getShipping()}>

<{if $shipping->getShippingId()==7664}>

Du har nu hentet din ordre

<{else}>

Din ordre er blevet sendt afsted

<{/if}>

<{/if}>

Mere skal der ikke til.

Har du mere end én fragtmetode, du vil tilpasse mailen til, så skal koden blot se sådan ud:

<{if $order}>

<{assign var="shipping" value=$order->getShipping()}>

<{if $shipping->getShippingId()==7664}>

Du har nu hentet din ordre

<{elseif $shipping->getShippingId()==1234}>

Her står en helt anden tekst

<{else}>

Her står fallback teksten som alle andre får

<{/if}>

<{/if}>

Husk når du har ændret i dine html-filer, så bør du teste, at det hele virker som det skal.

Happy hacking 😎

Besvarede dette dit spørgsmål?