Krav og begrensninger for Shopify Scripts
Det finnes noen begrensninger for Shopify Scripts for å forbedre sikkerheten og for å sikre at skript kan kjøre uansett hvor mange kunder som bruker butikken din til enhver tid. Husk på følgende restriksjoner hvis du utvikler skript for Shopify-butikken din.
På denne siden
- Nettbutikk og Storefront API
- Publiserte skript
- Maksimalt antall Shopify Scripts
- Bestillingsutkast
- Metafelter
- Handlekurv-/kasseattributter
- Rabattkoder
- Poster
- Fraktpriser
- Flere valutaer
- Regulære uttrykk
- Temaer
- Ressurser
- Inndata/utdata
- Tid og tilfeldighet
- Tegngrense for skript
- Abonnementsbestillinger
- Akselererte kasser
- Shopify Point of Sale (POS)
- Endre navn på betalingsgatewayer
- Delt frakt i kassen
Nettbutikk og Storefront API
Når du oppretter eller redigerer et skript, velger du om det bare skal kjøres i nettbutikken, eller i nettbutikken og i følgende apper:
- Tilpassede apper som er bygget med Storefront API, JavaScript Buy SDK eller Mobile Buy SDKs (Android og iOS)
- Tilpassede apper som genererer kasser
- Mobilappverktøyene Tapcart og Plobal Apps
For at skript skal fungere må nettstedet ha innebygd handlekurvfunksjonalitet, så du kan ikke bruke skript med Kjøp-knapper eller salgskanalen Facebook and Instagram by Meta.
Publiserte skript
Bare ett skript per skripttype kan publiseres om gangen. Du kan for eksempel publisere et skript for poster og et skript for fraktpriser, men du kan ikke publisere to skript for poster samtidig.
Maksimalt antall Shopify Scripts
Du kan opprette opptil 200 Shopify Scripts.
Bestillingsutkast
Skript for poster, fraktpriser og betalinger fungerer ikke med bestillingsutkast eller kassen for bestillingsutkast.
Metafelt
Shopify Scripts har ikke tilgang til metafelt.
Kjennemerker for handlekurv/kasse
Shopify Scripts har ikke tilgang til Shopify Liquid-handlekurvkjennemerker. Du kan legge til disse kjennemerkene på handlekurvsidene for å samle inn ekstra informasjon fra kundene, men du kan ikke opprette et skript som bruker dem.
Rabattkoder
Skript har tilgang til om en rabattkode er brukt, rabattbeløpet og typen rabatt, som for eksempel fast beløp, prosentandel eller frakt. Skript har ikke tilgang til hvordan rabattkoden brukes, for eksempel om den er spesifikk for handlekurven eller en post. Dette betyr at skript ikke har tilgang til totalbeløp etter rabatt eller automatiske rabatter.
Post- og fraktskript som har tilgang til rabatter som brukes på en handlekurv, er ikke kompatible med rabattkombinasjoner. .discount_code-metoden kan bare returnere én enkelt rabattkode. Handlekurver som inneholder flere rabattkoder ved hjelp av rabattkombinasjoner, støttes ikke.
Poster
Skript kan ikke legge til varer i handlekurven eller øke prisen på en vare.
Fraktpriser
Skript kan ikke øke en fraktpris.
Multivaluta
Det kan hende skriptene dine ikke fungerer med multivaluta som forventet. For å sikre at skriptene dine fungerer for handlekurver eller kasser som er i en annen valuta enn butikkens primærvaluta, må du migrere skriptene dine til Shopify Functions.
Regulære uttrykk
Samsvar med regulære uttrykk støttes ikke. Hvis du oppretter et postskript, kan du kanskje bruke en av følgende metoder som en midlertidig løsning:
split-metodenstart_with- ogend_with-metodeneinclude-metoden
Temaer
Det kan hende du må oppdatere Liquid-temaet ditt for å støtte skriptene dine og for å unngå å forvirre kundene. For eksempel er det ikke alle temaer som viser rabatter for poster i handlekurven. Hvis dette gjelder deg, må du redigere temaet ditt for å vise rabatter for poster i handlekurven. Finn ut mer om typene modifikasjoner du kan gjøre med Liquid-temaene dine.
Ressurser
Mengden CPU og minne som er tilgjengelig for et skript, er begrenset. Ressursene som er reservert for et skript avhenger av størrelsen på handlekurven og mengden beregninger skriptet krever. Shopify sporer disse ressursgrensene nøye for å sikre at de ikke hindrer skriptet ditt i å fungere som det skal.
Når du tester et skript, skriver konsollen i Script Editor ut prosentandelen av tildelte ressurser som skriptet bruker.
Inndata/utdata
Med noen få unntak kan ikke Shopify Scripts håndtere inndata/utdata. Dette betyr at skript ikke kan utføre nettforespørsler eller databasekall, og de kan ikke hente inn data fra en bruker.
puts-metoden kan brukes til å skrive ut tekst til konsollen i Script Editor-appen.
Tid og tilfeldighet
Skript kan ikke involvere tilfeldige eller tidsbaserte beregninger. Time-objektet og rand-metoden er ikke tilgjengelige for Shopify Scripts.
Fordi skript kjøres hver gang totalbeløpet i en handlekurv beregnes på nytt, kan skript basert på tid eller tilfeldig tallgenerering gi uforutsigbare eller forvirrende resultater hvis en kunde endrer handlekurven sin ofte. Du kan imidlertid planlegge at skript skal kjøres under arrangementer ved hjelp av Launchpad-appen.
Tegnbegrensning for skript
Du kan opprette skript på opptil 40 960 tegn.
Abonnementsbestillinger
Hvis post- og fraktskriptene dine oppretter en rabatt for et abonnementsprodukt, gjelder rabatten for følgende innbetalinger:
- den første innbetalingen for en «betal per levering»-bestilling, men ikke for planlagte bestillinger
- hele beløpet for en forhåndsbetalt abonnementsbestilling
Finn ut mer om abonnementer og skript.
Hurtigkasser
Når du bruker Shopify Scripts med hurtigkasser, brukes fraktrabatter etter at kunden har valgt en hurtigbetalingsmåte. På grunn av dette reflekteres ikke endringer i bestillingens pris på kundens enhet eller i nettleseren. Kunder kan se den opprinnelige prisen i hurtigkassen sin, men de blir belastet den korrekte, rabatterte prisen.
Shopify Point of Sale (POS)
Shopify Scripts fungerer ikke med Shopify Point of Sale (POS).
Omdøping av betalingsgatewayer
Du kan ikke gi nytt navn til betalingsgatewayer som har bilder eller logoer vist som navnet på gatewayen. Betalingsgatewayer med logobilder ved siden av navnet sitt, kan gis nytt navn.
Delt frakt i kassen
Fraktskript er ikke kompatible med delt frakt i Shopify Checkout. Hvis du bruker fraktskript og aktiverer delt frakt, vises ikke delte forsendelser til kundene dine i kassen.