Как да показвате Лева и Евро в имейлите на Shopify без апове

Лева и Евро в имейл шаблоните на Shopify

В продължение на темата с еврото и необходимото презентиране на цените в двете валути, подготвихме кратко ръководство как да подготвите имейл шаблоните си в Shopify.

ВАЖНО:

  1. Сега е момента да предупредим, че тук нещата изискват малко повече техническа грамотност и не са толкова елементарни, както с поставянето на един скрипт в хеда… Ако не искате да си изцапате ръцете с малко код, то по-добре се обърнете към специалист, който да извърши необходимите промени и да спите спокойно.
  2. Прочетете статията докрай.
  3. Направете си бекъп на всички файлове, преди да ги модифицирате, може да се наложи да възстановите в някакъв момент.
  4. На този етап презентацията е от лева към евро и НЯМА автоматично да се промени в обратната посока след Нова Година. Тогава ще трябва да се направи подобна модификация, но в обратната посока. Ще предоставим подобно ръководство следващите месеци, за сега може да почака.
  5. Ако имате повече езици в сайта, промените в шаблоните следва да бъдат направени в конкретния език(български). Дали през някакъв превод(translate) или с директно редактиране на шаблона. Оставяме на вас да решите.
  6. Приложеното ръководство работи със стандартните транзакционни имейли на Shopify. Ако използвате някакви други apps, то няма да стане работата с тях 😉

Въведение

В Shopify по подразбиране всички имейл известия показват цените само в една валута – тази на магазина. За да можем да се презентират и двете валути, е необходимо да се редактират имейлите за различните нотификации. В конкретния пример, най важната нотификация е Order confirmation имейла, който вашите клиенти получават след поръчка.

От наша страна доста четохме по темата какво трябва да бъде показвано в двете валути и за съжаление до този момент не сме сигурни какво точно, така че оставяме на вас да прецените кои елементи и цени от имейла искате да модифицирате. А именно:

  • Тотал на поръчката (total)
  • Междинна цена (subtotal)
  • Цената на доставката
  • Цената на отделните редове/продукти в поръчката

Къде се намират имейл шаблоните за нотификации

Settings(долу-ляво) -> Notifications -> Customer notifications -> Order confirmation

Тук можете да променяте езика за шаблона, който искате да прегледате/ редактирате посредством черния бутон Едит code.

Препоръчително е да имате под ръка някакъв текстов редактор като Notepad или негов аналог, в който да можете да извършвате търсене и замяна(Find and replace) във файловете.

Също така, преди да редактирате съдържанието на имейл шаблона, трябва да копирате цялото съдържание и да си направите някакъв бекъп под формата на .txt или .liquid файл.

Всички промени по файла ще направите в отделен “работен” файл и когато сте готови, ще трябва да замените цялото съдържание на имейл шаблона в самия Shopify. Това ще бъде последната стъпка.

Какъв е нашият подход

В хедъра на имейл шаблона, създаваме(добавяте 😉 няколко нови дефиниции, които впоследствие трябва да бъдат заменени на местата на дефолтните променливи, които са в шаблона на Shopify. Не е много културно, но друг начин не успяхме да измислим, тъй като в шаблоните не е възможно да бъдат инклудвани snippets или други екстри, които да улеснят модификациите. По-долу ще изброим всички цени, а на вас оставяме да прецените, кои искате да промените.

Препоръчвам първоначално да решете кои цени желаете да презентирате в двете валути, след което да извършеите замените в кода/шаблона и чак на финала да инклуднете новите дефиниции. Леко отзад-напред, но така поне няма да се презапишете или да промените дефинициите в хеда на шаблона.

1. Тотал (Total Price)

Потърсете(Find):

{{ total_price | money_with_currency }}

Заменете със(Replace):

{{ total_price_rz }}

2. Цена на доставка (Shipping Prices)

Потърсете:

{{ shipping_price | money }}

Заменете със:

{{ shipping_price_rz }}

3. Цена на отделен ред/продукт (Line Item Prices)

Потърсете:

{{ line.final_line_price | money }}

Заменете със:

{%- assign line_eur = line.final_line_price | divided_by: cents_to_currency | divided_by: bgn_to_eur_rate | round: 2 -%}
{{ line.final_line_price | money }} / €{{ line_eur }}

4. Бъндъли (Bundle/Group Prices)

Потърсете:

{{ final_line_price | money }}

Заменете със:

{%- assign group_eur = final_line_price | divided_by: cents_to_currency | divided_by: bgn_to_eur_rate | round: 2 -%}
{{ final_line_price | money }} / €{{ group_eur }}

5. Междинна сума (Subtotal Section)

Потърсете:

{{ subtotal_price | plus: total_order_discount_amount | money }}

Заменете със:

{%- assign subtotal_with_disc_bgn = subtotal_price | plus: total_order_discount_amount | divided_by: cents_to_currency -%}
{%- assign subtotal_with_disc_eur = subtotal_with_disc_bgn | divided_by: bgn_to_eur_rate | round: 2 -%}
{{ subtotal_price | plus: total_order_discount_amount | money }} / €{{ subtotal_with_disc_eur }}

Добавете новите дефиниции в шаблона

След като вече сте редактирали файла и вече сте заменили цените по ваше усмотрение, сега идва момента да добавим дефинициите и съответно шаблона да показва коректни данни.

Някъде около ред 60 трябва да започва бодито на имейл шаблона или <!DOCTYPE html>. Преди него и след реда с {% endcapture %} добавете следните дефиниции:

{%- assign bgn_to_eur_rate = 1.95583 -%}
{%- assign cents_to_currency = 100.0 -%}
{%- assign total_price_bgn = total_price | divided_by: cents_to_currency -%}
{%- assign total_price_eur = total_price_bgn | divided_by: bgn_to_eur_rate | round: 2 -%}
{%- capture total_price_rz -%}{{ total_price | money_with_currency }} / €{{ total_price_eur }}{%- endcapture -%}
{%- if shipping_price and shipping_price > 0 -%}
  {%- assign shipping_price_bgn = shipping_price | divided_by: cents_to_currency -%}
  {%- assign shipping_price_eur = shipping_price_bgn | divided_by: bgn_to_eur_rate | round: 2 -%}
  {%- capture shipping_price_rz -%}{{ shipping_price | money }} / €{{ shipping_price_eur }}{%- endcapture -%}
{%- endif -%}

Последна стъпка – заменете кода в шаблона

Сега вече когато сте направили всички промени в работния файл, то следва да замените с оригиналния код/шаблон на Shopify. Изтрийте целия код от шаблона и просто копирайте съдържанието от вашия работен файл, където са всички промени.

И готово. Сега вече при превю на шаблона трябва да виждате и двете валути и всички да са доволни 😉