Ažuriranje predložaka za Liquid za Scripts
Ako izvodite skripte u svojoj internetskoj trgovini, trebate provjeriti kako one utječu na stranice internetske trgovine. Mnoge teme uključuju kod za podršku skripti, no neke ga nemaju. Ako vaša tema ne sadrži taj kod, možete ga dodati.
Rješavanje problema
Većina problema sa skriptama i temama uključuje skripte linije artikla koje nude popuste. Na primjer, ukupna je cijena narudžbe točna, ali cijene linije artikla ne prikazuju popuste. Korisnici moraju razumjeti kako su im obračunati popusti. Žele vidjeti izvornu cijenu i cijenu s popustom te kratki opis popusta. Ako neki od tih podataka nedostaje u vašoj košarici, trebate dodati kod Liquid kako bi se prikazivali.
Dobar način da provjerite kako skripta utječe na vašu internetsku trgovinu jest da je posjetite kao korisnik i izvršite radnje koje pokreću skriptu.
Atributi objekta jezika predloška Liquid
Sljedeći popisi sadrže atribute objekta jezika predloška Liquid koji su obično potrebni za podršku skriptama u košarici vaše trgovine:
Atributi objekta košarice:
Atributi linije artikla:
- line_item.discounts
- line_item.message
- line_item.original_price
- line_item.original_line_price
- line_item.total_discount
Objekt skripte:
- Objekt skripte može se upotrijebiti za vraćanje informacija o aktivnim skriptama trgovine. Ovaj objekt može biti koristan pri otklanjanju pogrešaka u skriptama.
Primjer
Sljedeći primjer opisuje izmjene koje možete unijeti u svoj predložak cart.liquid za podršku skripti linije artikla.
Primjer košarice
Na primjer, ako imate košaricu s trima linijama artikla:
- Nogometna lopta
- Količina: 1
- Jedinična cijena: 15,00 USD
- Teniska loptica
- Količina: 5
- Jedinična cijena: 5,00 USD
- Tenisica za trčanje
- Količina: 1
- Jedinična cijena: 30,00 USD
I objavili ste skriptu koja primjenjuje sljedeće popuste:
- 10 % popusta na dvije teniske loptice ili više njih
- Popust od 5,00 USD na sve tenisice
Tada bi vaš predložak cart.liquid mogao biti jednostavna tablica koja navodi linije artikla i sažetak njihovih ukupnih iznosa:
<table class="cart">
<thead class="heading">
<tr>
<th>Product</th>
<th>Quantity</th>
<th>Total</th>
</tr>
</thead>
<tbody class="line-items">
{% for item in cart.items %}
<tr>
<td>{{ item.product.title }}</td>
<td>{{ item.quantity }}</td>
<td>{{ item.line_price | money }}</td>
</tr>
{% endfor %}
</tbody>
<tfoot class="summary">
<tr>
<td colspan="2">Total</td>
<td>{{ cart.total_price | money }}</td>
</tr>
</tfoot>
</table>S popustima koje je primijenila skripta, ovaj predložak stvara sljedeću tablicu za vašu košaricu:
| Proizvod | Količina | Ukupno |
|---|---|---|
| Nogometna lopta | 1 | 15,00 USD |
| Teniska loptica | 5 | 22,50 USD |
| Tenisica za trčanje | 1 | 25,00 USD |
| Ukupno | 62,50 USD | |
Ažuriranje linija artikala
Za prikaz popusta koje je primijenila skripta potrebno je ažurirati linije artikala kako bi prikazivale tri ključna podatka:
- cijenu linije prije popusta
- cijenu linije nakon popusta
- poruku s opisom primijenjenih popusta.
Da biste to učinili, upotrijebite sljedeće atribute objekta jezika predloška Liquid:
line_item.total_discountvraća iznos popusta koji je primijenjen na liniju artiklaline_item.original_line_pricevraća cijenu linije artikla prije popustaline_item.messagevraća poruku koja opisuje popuste primijenjene na liniju artikla.
Pri razlikovanju izvorne cijene linije od one s popustom može vam pomoći efekt precrtavanja:
<tbody class="line-items">
{% for item in cart.items %}
<tr>
<td>{{ item.product.title }}</td>
<td>{{ item.quantity }}</td>
<td>
{{ item.line_price }}
{% if item.total_discount > 0 %}
<s>{{ item.original_line_price }}</s>
( {{ item.message }} )
{% endif %}
</td>
</tr>
{% endfor %}
</tbody>Vaša bi košarica sada trebala izgledati ovako:
| Proizvod | Količina | Ukupno |
|---|---|---|
| Nogometna lopta | 1 | 15,00 USD |
| Teniska loptica | 5 | 22,50 USD |
| Tenisica za trčanje | 1 | 25,00 USD |
| Ukupno | 62,50 USD | |
Ažuriranje sažetka košarice
Da biste korisniku olakšali praćenje cijene narudžbe, trebali biste prikazati i sljedeće:
- izvorni međuzbroj košarice kako biste korisnicima omogućili usporedbu iznosa prije i poslije popusta
- ukupnu uštedu koju je korisnik ostvario u svojoj košarici.
Opet, za dodavanje tih podataka upotrijebite sljedeće atribute objekta jezika predloška Liquid:
cart.total_discountvraća iznos popusta primijenjenog na stavke u košaricicart.original_total_pricevraća međuzbroj košarice prije popusta.
S tim podacima vaš ažurirani blok .summary mogao bi izgledati ovako:
<tfoot class="summary">
<tr>
<td colspan="2">Subtotal</td>
<td>{{ cart.original_total_price | money }}</td>
</tr>
<tr>
<td colspan="2">Discount Savings</td>
<td>{{ cart.total_discount | money }}</td>
</tr>
<tr>
<td colspan="2">Total</td>
<td>{{ cart.total_price | money }}</td>
</tr>
</tfoot>Tablica vaše košarice sada bi trebala izgledati ovako:
| Proizvod | Količina | Ukupno |
|---|---|---|
| Nogometna lopta | 1 | 15,00 USD |
| Teniska loptica | 5 | 22,50 USD |
| Tenisica za trčanje | 1 | 25,00 USD |
| Međuzbroj | 70,00 USD | |
| Ušteda na temelju popusta | 7,50 USD | |
| Ukupno | 62,50 USD | |
Dodavanjem nekoliko novih objekata jezika predloška Liquid u svoje predloške, možete korisnicima pomoći u razumijevanju načina na koji im se izračunavaju popusti.
Ostali primjeri
Sljedeći primjer jezika predloška Liquid prikazuje popuste za svaku liniju artikla:
{% if item.original_line_price != item.line_price %}
<small class="original-price"><s>{{ item.original_line_price | money }}</s></small>
{% endif %}
{{ item.line_price | money }}
{% for discount in item.discounts %}
<small class="discount">{{ discount.title }}</small>
{% endfor %}Pogledajte još jedan primjer popusta koji uključuje izmjene koda Liquid.