Liquid-eko txantiloiak scriptetarako eguneratzea
Sareko dendan scriptak exekutatzen badituzu, egiaztatu egin behar duzu erakusleihoaren orrietan nola eragiten duten. Gai askok scriptak onartzeko kodea barne hartzen dute, baina beste batzuek ez. Zure gaiak koderik ez badu, zuk zeuk gehi dezakezu.
Arazoak konpontzea
Script eta gaiekin izaten diren arazo gehienak deskontuak eskaintzen dituzten lerroko elementuen scriptekin lotuta daude. Adibidez, eskaeraren guztizko prezioa zuzena da, baina lerroko elementuen prezioetan ez dira deskontuak agertzen. Bezeroek beren deskontuak nola kalkulatzen diren ulertu behar dute. Jatorrizko prezioa eta prezio deskontatua ikusi nahi dituzte, baita deskontuaren deskribapen labur bat ere. Zure saskian xehetasun horietakoren bat falta bada, Liquid kodea gehitu behar duzu ager daitezen.
Zure scriptak erakusleihoan duen eragina egiaztatzeko modu on bat bezero gisa sartzea da eta scripta abiarazten duten ekintzak burutzea.
Liquid-eko objektuen atributuak
Ondorengo zerrendetan daude zure dendaren saskian scriptak onartzeko normalean behar izaten diren Liquid-eko objektuen atributuak:
Saskiko objektuen atributuak:
Lerroko elementuen atributuak:
- line_item.discounts
- line_item.message
- line_item.original_price
- line_item.original_line_price
- line_item.total_discount
Scriptaren objektua:
- Scriptaren objektua dendako script aktiboei buruzko informazioa itzultzeko erabil daiteke. Objektu hau erabilgarria izan daiteke scriptak araztean.
Adibidea
Hurrengo adibideak lerroko elementu baten scripta onartzeko cart.liquid txantiloian egin ditzakezun aldaketak deskribatzen ditu.
Saskiaren adibidea
Adibidez, hiru lerroko elementu dituen saski bat baduzu:
- Futboleko baloia
- Kopurua: 1
- Unitateko prezioa: 15,00 $
- Teniseko pilota
- Kopurua: 5
- Unitateko prezioa: 5,00 $
- Korrika egiteko zapatila
- Kopurua: 1
- Unitateko prezioa: 30,00 $
Eta ondorengo deskontuak aplikatzen dituen script bat argitaratu baduzu:
- % 10eko deskontua bi teniseko pilota edo gehiagotan
- 5 $-eko deskontua zapatila guztietan
Orduan, cart.liquid txantiloia taula soil bat izan daiteke, lerroko elementuen zerrenda eta guztizko kopuruen laburpen bat biltzen dituena:
<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>Scriptak aplikatutako deskontuekin, txantiloi honek hurrengo taula sortzen du zure saskirako:
| Produktua | Kopurua | Guztira |
|---|---|---|
| Futboleko baloia | 1 | 15,00 $ |
| Teniseko pilota | 5 | 22,50 $ |
| Korrika egiteko zapatila | 1 | 25,00 $ |
| Guztira | 62,50 $ | |
Eguneratu lerroko elementuak
Scriptak aplikatutako deskontuak erakusteko, lerroko elementuak eguneratu behar dira hiru informazio nagusi agertzeko:
- lerroaren prezioa deskontuen aurretik
- lerroaren prezioa deskontuen ondoren
- aplikatutako deskontuak deskribatzen dituen mezu bat.
Horretarako, erabili hurrengo Liquid-eko objektuen atributuak:
line_item.total_discountatributuak lerroko elementuari aplikatu zaion deskontu-zenbatekoa itzultzen duline_item.original_line_priceatributuak lerroko elementuaren prezioa itzultzen du deskontuen aurretikline_item.messageatributuak lerroko elementuari aplikatutako deskontuak deskribatzen dituen mezu bat itzultzen du.
Marratu-efektua erabiltzeak lagun dezake jatorrizko lerroaren prezioa eta deskontatutako lerroaren prezioa bereizten:
<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>Zure saskiak orain itxura hau izan beharko luke:
| Produktua | Kopurua | Guztira |
|---|---|---|
| Futboleko baloia | 1 | 15,00 $ |
| Teniseko pilota | 5 | 22,50 $ |
| Korrika egiteko zapatila | 1 | 25,00 $ |
| Guztira | 62,50 $ | |
Eguneratu saskiaren laburpena
Bezeroari eskaeraren prezioaren jarraipena egiten laguntzeko, hurrengoa ere erakutsi beharko zenuke:
- saskiaren jatorrizko guztizko partziala, bezeroei deskontu aurreko eta ondorengo guztizkoak alderatzeko aukera emateko
- bezeroak saskian lortutako aurrezki osoa.
Berriro ere, informazio hori gehitzeko, erabili hurrengo Liquid-eko objektuen atributuak:
cart.total_discountatributuak saskiko elementuei aplikatutako deskontu-zenbatekoa itzultzen ducart.original_total_priceatributuak saskiaren guztizko partziala itzultzen du deskontuen aurretik.
Informazio honekin, eguneratutako .summary blokeak itxura hau izan lezake:
<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>Saskiko taulak orain itxura hau izan beharko luke:
| Produktua | Kopurua | Guztira |
|---|---|---|
| Futboleko baloia | 1 | 15,00 $ |
| Teniseko pilota | 5 | 22,50 $ |
| Korrika egiteko zapatila | 1 | 25,00 $ |
| Guztizko partziala | 70,00 $ | |
| Aurrezkia deskontuengatik | 7,50 $ | |
| Guztira | 62,50 $ | |
Txantiloietan Liquid-eko objektu berri batzuk gehituz, bezeroei beren deskontuak nola kalkulatzen diren ulertzen lagun diezaiekezu.
Beste adibide batzuk
Ondorengo Liquid-eko adibideak lerroko elementu bakoitzaren deskontuak erakusten ditu:
{% 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 %}Ikusi Liquid kodearen aldaketak barne hartzen dituen beste deskontu-adibide bat.