Atlaides skripta piemērs
Šajā piemērā izmantots rindas vienumu skripts, lai piedāvātu atlaidi, pamatojoties uz klienta valsti. Piemērā iekļauts arī Liquid koda piemērs, lai sniegtu klientam informāciju par atlaidi. Šajā piemērā ir nepieciešama piekļuve tava veikala failam checkout.liquid. Ja tev nav piekļuves šim failam tavā tēmas kodā, izmanto Shopify Extensions norēķināšanās lapai un Shopify Functions, lai pielāgotu norēķināšanos.
Šajā piemērā ir izmantots iedomāts PVN, kuram ir šādi noteikumi:
- Klientiem, kuri dzīvo valstu savienībā, par visiem pārdotajiem produktiem tiek piemērots PVN.
- Klientiem, kuri iegādājas produktus un eksportē tos uz valsti, kas nav savienības dalībvalsts, nav jāmaksā PVN (citiem vārdiem sakot, pārdošanai šiem klientiem tiek piemērota nulles likme).
- Veikala produktu cenās ir iekļauts PVN, kas nozīmē, ka veikala nodokļu iestatījumos ir iespējots iestatījums Cenās ir iekļauti visi nodokļi.
Skatlogā visi klienti redz produktu cenās iekļauto PVN. Pievienojot vienumus grozam, tiek rādīta cena ar iekļauto PVN:

Norēķināšanās laikā skripts pārbauda piegādes valsti. Ja tā ir valsts, kas nav savienības dalībvalsts, kopējā cena tiek samazināta par PVN summu:

Šajā piemērā tiek pārbaudīta klienta valsts. Ja klients dzīvo valstī, kurā PVN nepiemēro, tad pasūtījuma kopējā cena tiek samazināta par PVN summu.
# Set VAT equal to the amount of the VAT rate.
# For example, if the VAT rate is 20%, then VAT=20
VAT = 20
# Message that appears beside the discount in the checkout
VAT_REMOVAL_MESSAGE = "VAT removed"
# List of countries where the VAT is charged to orders
COUNTRY_CODES_EU = %w[
AT BE BG CY CZ DK EE FI FR DE GR HU IE IT
LV LT LU MT NL PL PT RO SK SI ES SE GB
]
if Input.cart.shipping_address
unless COUNTRY_CODES_EU.include?(Input.cart.shipping_address.country_code)
Input.cart.line_items.each do |line_item|
product = line_item.variant.product
next if product.gift_card?
vat_only_fraction = VAT / (100.0 + VAT)
vat = line_item.line_price * vat_only_fraction
ex_vat_price = line_item.line_price - vat
line_item.change_line_price(ex_vat_price, message: VAT_REMOVAL_MESSAGE)
end
end
end
Output.cart = Input.cartTālāk norādītais Liquid kods darbojas kopā ar iepriekš minēto skriptu, lai izskaidrotu izmaiņas grozā.
Pievieno šo kodu failam checkout.liquid:
<style>
.checkout__vat-exemption-message {
padding: 1.25em 0;
display: none;
}
@media (min-width: 1000px) {
.checkout__vat-exemption-message {
padding-top: 0;
padding-bottom: 2.5em;
}
}
</style>
<div class="checkout__vat-exemption-message">
<span>{{ 'plus.checkout.vat_exemption_message' | t }}</span>
</div>
<script>
$(document).on('ready page:load page:change', function() {
var country = '';
if(Shopify.Checkout.step === 'contact_information') {
$country = $('[data-step] select[name="checkout[shipping_address][country]"]');
country = $country.find(':selected').data('code');
} else {
country = "{{ checkout.shipping_address.country_code }}";
}
var eu_countries = ['AT','BE','BG','CY','CZ','DK','EE','FI','FR','DE','GR','HU','IE','IT','LV','LT','LU','MT','NL','PL','PT','RO','SK','SI','ES','SE','GB'];
if (eu_countries.includes(country)) {
$('.checkout__vat-exemption-message').css('display', 'none');
} else {
$('.checkout__vat-exemption-message').css('display', 'block');
}
});
</script>Pievieno šādu kodu savam angļu valodas lokalizācijas failam:
"plus":{
"checkout": {
"vat_exemption_message": "As we're shipping outside the EU the VAT has been removed from items in your cart."
}
}Šajā lapā
Uzzināt vairāk
Uzzini vairāk par: