Skriptkrav och begränsningar
För att skapa skript behöver du Shopify Plus-planen och Script Editor. Du behöver också känna till programmeringsspråket Ruby eller ha tillgång till en utvecklare eller en Shopify-expert som känner till Ruby. Läs mer om att anlita Shopify Experts.
Vissa 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
- 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 webbutik eller i din webbutik och i följande appar:
- Anpassade som är byggda med Skyltfönster-API, JavaScript Buy SDK, 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 krävs att webbplatsen har inbyggda varukorgsfunktioner. Därför kan du inte använda skript med Köpknappen, Facebook- eller Grosshandels-försäljningskanalerna.
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 radartiklar, fraktskript och betalningsskript fungerar inte med orderutkast eller orderns utcheckningskassa.
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 (fast belopp, procent eller frakt), men de kan inte få tillgång till hur det tillämpas (varukorg- eller postspecifik). Skript kan därför inte få tillgång till summor efter rabatter och de kan inte heller få tillgång till automatiska rabatter.
Radartikel och fraktskript som har tillgång till rabatter som tillämpas på en varukorg är inte kompatibla med rabattkombinationer. Metoden .discount_code endast returnera en enda rabattkod. Varukorgar som innehåller flera rabattkoder med rabattkombinationer stöds inte.
Radartiklar
Skript kan inte lägga till varor i varukorgen eller öka en artikels pris.
Fraktkostnader
Skript kan inte öka priset för en fraktkostnad.
Reguljära uttryck
Regelbunden uttrycksmatchning stöds inte. Om du skapar ett radartikelskript kan du kanske använda någon av följande metoder som en lösning:
- delningsmetod
- start_with- och end_with-metoder
- inkludera 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 du blandar ihop dina kunder. Alla teman visar till exempel inte rabatter för orderradsartiklar i varukorgen. Om detta gäller för dig måste du redigera ditt tema för att visa rabatterna för orderradsartiklarna 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ängligt för ett skript är begränsad. Resurserna som är reserverade för ett skript beror på kundvagnens omfattning 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 till indata/utdata. 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 dock användas för att skriva ut text till konsolen i appen för skriptredigeraren.
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 dock 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 som är upp till 24 576 tecken långt.
Prenumerationsordrar
Om dina Lineitem- och leveransskript rabatterar 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 Point of Sale (POS).
Byta namn på betalnings-gatewayer
Du kan inte byta namn på betalnings-gatewayer som har logotyper.