Krav och begränsningar för Shopify-skript
Vissa Shopify-skriptbegränsningar finns för att förbättra säkerheten och se till att skript kan köras oavsett hur många kunder din butik har vid ett givet tillfälle. Tänk på följande begränsningar om du utvecklar skript till din Shopify-butik.
På den här sidan
- Webbutik och storefront-API
- Publicerade skript
- Maximalt antal Shopify-skript
- Orderutkast
- Metafält
- Attribut för varukorg/kassa
- Rabattkoder
- Radartiklar
- Fraktkostnader
- Flera valutor
- Reguljära uttryck
- Teman
- Resurser
- Input/output
- Tid och slumpmässighet
- Gräns för skripttecken
- Prenumerationsordrar
- Snabbkassa
- Shopify Point of Sale (POS)
- Byta namn på betalnings-gatewayer
Webbutik och storefront-API
När du skapar eller redigerar ett skript väljer du om det bara ska köras i din webbshop eller i din webbshop och i följande appar:
- Anpassade appar som är byggda med Storefront API, JavaScript Buy SDK eller Mobile Buy SDK (Android och iOS)
- Anpassade appar som genererar kassor
- Tapcart och Plobal Apps skapare av mobila appar
För att skript ska fungera måste din webbplats ha inbyggda varukorgsfunktioner, så du kan inte använda skript med köpknappar eller Facebook och Instagram från Metas försäljningskanal.
Publicerade skript
Endast ett skript per skripttyp kan publiceras i taget. Du kan till exempel publicera ett skript för radobjekt och ett skript för fraktkostnader, men du kan inte publicera två radobjektskript samtidigt.
Maximalt antal Shopify-skript
Du kan skapa upp till 200 Shopify-skript.
Orderutkast
Skript för poster, skript för fraktkostnad och skript för betalningar fungerar inte med orderutkast eller kassan för orderutkast.
Metafält
Shopify-skript kan inte komma åt metafält.
Attribut för varukorg/kassa
Shopify-skript kan inte komma åt Shopifys Liquid-varukorgsattribut. Du kan lägga till dessa attribut på dina varukorgssidor för att samla in extra information från dina kunder men du kan inte skapa ett skript som använder dem.
Rabattkoder
Skript kan få tillgång till huruvida en rabattkod tillämpas, rabattens belopp och rabattypen, till exempel fast reducerat belopp, procentsats eller frakt. Skript kan inte få tillgång till hur rabattkoden tillämpas, till exempel om den är varukorgsspecifik eller postspecifik. Skript kan därför inte få tillgång till summor efter rabatt eller automatiska rabatter.
Skript för poster och skript för frakt som har tillgång till rabatter som tillämpas på en varukorg är inte kompatibla med rabattkombinationer. Metoden .discount_code
kan endast returnera en enda rabattkod. Varukorgar som innehåller flera rabattkoder med rabattkombinationer stöds inte.
Radartiklar
Skript kan inte lägga till artiklar i varukorgen eller öka en artikels pris.
Fraktkostnader
Skript kan inte öka priset för en fraktkostnad.
Flera valutor
Dina skript kanske inte fungerar med flera valutor som förväntat. För att säkerställa att dina skript fungerar för varukorgar eller kassor som är 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 skript för poster kan du kanske använda någon av följande metoder som en lösning:
-
split
metod -
start_with
- ochend_with
-metoder -
include
metod
Teman
Du kan behöva uppdatera ditt Liquid-tema så att det har stöd för dina skript och för att undvika att förvirra dina kunder. Alla teman visar till exempel inte rabatter för poster i varukorgen. Om detta gäller för dig måste du redigera ditt tema för att visa rabatterna för posterna i varukorgen. Läs mer om vilka typer av ändringar som du kan göra i dina Liquid-teman.
Resurser
Mängden CPU och minne som är tillgänglig för ett skript är begränsad. Resurserna som är reserverade för ett skript beror på varukorgens storlek och antalet beräkningar som skriptet kräver. Shopify spårar noggrant dessa resursbegränsningar 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 tilldelade resurser som skriptet använder.
Input/output
Med några få undantag kan Shopify-skript inte hantera input/output. Detta innebär att skript inte kan köra webbförfrågningar eller databasanrop. De kan inte heller ta emot indata från en användare.
puts
-metoden kan användas för att skriva ut text till konsolen i Script Editor-appen.
Tid och slumpmässighet
Skript kan inte innefatta slumpmässiga eller tidsbaserade beräkningar. Shopify skript kan inte komma åt Time
-objekt eller rand
-metod.
Eftersom skript körs varje gång en omberäkning av en varukorg sker, kan skript som är baserade på tid eller slumptalsgenerering få oförutsägbara eller förvirrande resultat om en kund ändrar sin varukorg ofta. Du kan däremot schemalägga skript för att köras under händelser med hjälp av Launchpad-appen.
Gräns för skripttecken
Du kan skapa skript med upp till maximalt 40 960 tecken.
Prenumerationsordrar
Om dina skript för poster och frakt skapar en rabatt på en prenumerationsprodukt gäller rabatten för följande betalningar:
- endast den första betalningen för en betala per leverans, utan att tillämpas på schemalagda ordrar
- hela beloppet för en förbetald prenumerationsorder.
Läs mer om prenumerationer och skript.
Snabbkassa
När du använder Shopify-skript med snabbkassor kommer fraktrabatter tillämpas när din kund väljer en snabb betalningsmetod. På grund av detta återspeglas inte ändringar av orderbeloppet på kundens enhet eller i webbläsaren. Kunderna ser det ursprungliga priset i sin snabbkassa, men kommer att debiteras rätt rabatterat pris.
Shopify Point of Sale (POS)
Shopify-skript fungerar inte med Shopify kassasystem.
Byta namn på betalnings-gatewayer
Du kan inte byta namn på betalnings-gateways som har bilder eller logotyper som visas som namnet på gatewayen. Betalnings-gateways med logotypbilder intill namnet kan döpas om.