Krav och begränsningar för Shopify-skript
Det finns vissa begränsningar för Shopify-skript för att öka säkerheten och se till att skript kan köras oavsett hur många kunder som använder din butik vid en viss tidpunkt. Tänk på följande begränsningar när du utvecklar skript för din Shopify-butik.
På den här sidan
- Webbshop och Storefront API
- Publicerade skript
- Maximalt antal Shopify-skript
- Orderutkast
- Metafält
- Attribut för varukorg/kassa
- Rabattkoder
- Poster
- Fraktkostnader
- Flera valutor
- Reguljära uttryck
- Teman
- Resurser
- Indata/utdata
- Tid och slumpmässighet
- Teckenbegränsning för skript
- Prenumerationsordrar
- Snabbkassor
- Shopify Kassasystem (POS)
- Byta namn på betalnings-gatewayer
- Delad frakt i kassan
Webbshop och Storefront API
När du skapar eller redigerar ett skript väljer du om det endast ska köras i din webbshop eller i din webbshop och i följande appar:
- Anpassade appar som har byggts med Storefront API, JavaScript Buy SDK eller Mobile Buy SDKs (Android och iOS)
- Anpassade appar som genererar kassor
- Mobilappsbyggarna Tapcart och Plobal Apps
För att skript ska fungera måste webbplatsen ha en inbyggd varukorgsfunktion. Därför kan du inte använda skript med Buy Buttons eller försäljningskanalen Facebook and Instagram by Meta.
Publicerade skript
Endast ett skript per skripttyp kan publiceras åt gången. Du kan till exempel publicera ett postskript och ett fraktkostnadsskript, men du kan inte publicera två postskript samtidigt.
Maximalt antal Shopify-skript
Du kan skapa upp till 200 Shopify-skript.
Orderutkast
Postskript, fraktkostnadsskript och betalningsskript fungerar inte med orderutkast eller kassan för orderutkast.
Metafält
Shopify-skript kan inte komma åt metafält.
Varukorgs-/kassaattribut
Shopify-skript kan inte komma åt Shopify Liquid-varukorgsattribut. Du kan lägga till dessa attribut på dina varukorgssidor för att samla in ytterligare information från dina kunder, men du kan inte skapa ett skript som använder dem.
Rabattkoder
Skript kan komma åt om en rabattkod tillämpas, rabattens belopp och rabattypen, till exempel ett fast reducerat belopp, procent eller frakt. Skript kan inte komma åt hur rabattkoden tillämpas, till exempel om den är varukorgsspecifik eller produktspecifik. Det innebär att skript inte kan komma åt totalbelopp efter rabatt eller automatiska rabatter.
Post- och fraktskript som har åtkomst till rabatter som tillämpas i en varukorg är inte kompatibla med rabattkombinationer. Metoden .discount_code kan endast returnera en enda rabattkod. Varukorgar som innehåller flera rabattkoder med hjälp av rabattkombinationer stöds inte.
Poster
Skript kan inte lägga till artiklar i varukorgen eller höja priset på en artikel.
Fraktkostnader
Skript kan inte höja en fraktkostnad.
Flera valutor
Dina skript kanske inte fungerar som förväntat med flera valutor. För att säkerställa att dina skript fungerar för varukorgar eller kassor i en annan valuta än din butiks primära valuta måste du migrera dina skript till Shopify Functions.
Reguljära uttryck
Matchning av reguljära uttryck stöds inte. Om du skapar ett postskript kan du kanske använda en av följande metoder som en tillfällig lösning:
- Metoden
split - Metoderna
start_withochend_with - Metoden
include
Teman
Du kan behöva uppdatera ditt Liquid-tema för att stödja dina skript och för att undvika att förvirra dina kunder. Till exempel visar inte alla teman produktspecifika rabatter i varukorgen. Om så är fallet måste du redigera ditt tema för att visa de produktspecifika rabatterna i varukorgen. Mer information om de typer av ändringar som du kan göra i dina Liquid-teman.
Resurser
Mängden processor och minne som är tillgängligt för ett skript är begränsad. Resurserna som reserveras för ett skript beror på varukorgens storlek och mängden beräkningar som skriptet kräver. Shopify spårar noggrant dessa resursgränser för att se till att de inte hindrar ditt skript från att fungera som avsett.
När du testar ett skript skriver Script Editor-konsolen ut den procentandel av allokerade resurser som skriptet använder.
Indata/utdata
Med några få undantag kan Shopify-skript inte hantera indata/utdata. Det innebär att skript inte kan köra webbförfrågningar eller databasanrop och att de inte kan hämta indata från en användare.
Metoden puts kan användas för att skriva ut text i konsolen i Script Editor-appen.
Tid och slumpmässighet
Skript kan inte involvera slumpmässiga eller tidsbaserade beräkningar. Objektet Time och metoden rand kan inte kommas åt av Shopify-skript.
Eftersom skript körs varje gång en varukorgs totalsumma beräknas om, kan skript baserade på tid eller generering av slumptal ge oförutsägbara eller förvirrande resultat om en kund ofta ändrar sin varukorg. Du kan dock schemalägga att skript ska köras under händelser med hjälp av appen Launchpad.
Teckengräns för skript
Du kan skapa skript på upp till maximalt 40 960 tecken.
Prenumerationsordrar
Om dina post- och fraktskript skapar en rabatt för en prenumerationsprodukt gäller rabatten för följande betalningar:
- den första betalningen av endast en betalning per leverans, utan att gälla för schemalagda ordrar
- hela beloppet för en förbetald prenumerationsorder
Mer information om prenumerationer och skript.
Snabbkassor
När du använder Shopify-skript med snabbkassor tillämpas fraktrabatter efter att din kund har valt en snabbkassametod. På grund av detta visas inte ändringar i orderpriset på kundens enhet eller webbläsare. Kunder kan se originalpriset i sin snabbkassa, men de kommer att debiteras det korrekta rabatterade priset.
Shopify Point of Sale (POS)
Shopify-skript fungerar inte med Shopify Point of Sale (POS).
Byta namn på betalnings-gatewayer
Du kan inte byta namn på betalnings-gatewayer som har bilder eller logotyper som visas som gatewayens namn. Betalnings-gatewayer med logotypbilder bredvid sina namn kan döpas om.
Uppdelad frakt i kassan
Fraktskript är inkompatibla med uppdelad frakt i Shopify Checkout. Om du använder fraktskript och aktiverar uppdelad frakt visas inte uppdelade leveranser för dina kunder i kassan.