Wymagania i ograniczenia dotyczące Shopify Scripts

Niektóre ograniczenia Shopify Scripts istnieją w celu zwiększenia bezpieczeństwa i zapewnienia, że skrypty mogą działać bez względu na to, ilu klientów korzysta z Twojego sklepu w danym momencie. Pamiętaj o następujących ograniczeniach, jeśli tworzysz skrypty dla swojego sklepu Shopify.

Sklep online i Storefront API

Tworząc lub edytując skrypt, wybierasz, czy będzie on uruchamiany tylko w Twoim sklepie online, czy też w Twoim sklepie online i w następujących aplikacjach:

Aby skrypty działały, Twoja strona internetowa musi mieć wbudowaną funkcję koszyka zakupów, więc nie można używać skryptów z przyciskami zakupu ani kanałem sprzedaży Facebook and Instagram by Meta.

Opublikowane skrypty

W danym momencie można opublikować tylko jeden skrypt danego typu. Na przykład, możesz opublikować skrypt pozycji pojedynczych i skrypt stawek wysyłki, ale nie możesz opublikować dwóch skryptów pozycji pojedynczych jednocześnie.

Maksymalna liczba skryptów Shopify Scripts

Możesz utworzyć do 200 skryptów Shopify Scripts.

Wersje robocze zamówień

Skrypty pozycji pojedynczych, stawek wysyłki i płatności nie działają z wersjami roboczymi zamówień ani z kasą dla wersji roboczych zamówień.

Metapola

Skrypty Shopify Scripts nie mają dostępu do metapól.

Atrybuty koszyka/kasy

Skrypty Shopify Scripts nie mają dostępu do atrybutów koszyka Shopify Liquid. Możesz dodać te atrybuty do stron koszyka, aby zbierać dodatkowe informacje od klientów, ale nie możesz utworzyć skryptu, który z nich korzysta.

Kody rabatowe

Skrypty mają dostęp do informacji o tym, czy zastosowano kod rabatowy, a także do kwoty i rodzaju rabatu, np. w postaci ustalonej kwoty, rabatu procentowego lub rabatu na wysyłkę. Skrypty nie mają dostępu do informacji o sposobie zastosowania kodu rabatowego, na przykład czy dotyczy on całego koszyka, czy pozycji pojedynczej. Oznacza to, że skrypty nie mają dostępu do sum po rabacie ani do rabatów automatycznych.

Skrypty pozycji pojedynczych i wysyłki, które uzyskują dostęp do rabatów zastosowanych w koszyku, nie są kompatybilne z kombinacjami rabatów. Metoda .discount_code może zwrócić tylko jeden kod rabatowy. Koszyki zawierające wiele kodów rabatowych z wykorzystaniem kombinacji rabatów nie są obsługiwane.

Pozycje pojedyncze

Skrypty nie mogą dodawać pozycji do koszyka ani zwiększać ceny pozycji.

Stawki wysyłki

Skrypty nie mogą zwiększać ceny stawki wysyłki.

Wielowalutowość

Skrypty mogą nie działać zgodnie z oczekiwaniami w przypadku sprzedaży wielowalutowej. Aby zapewnić działanie skryptów w przypadku koszyków lub realizacji zakupu w walucie innej niż podstawowa waluta sklepu, należy przeprowadzić migrację skryptów do Shopify Functions.

Wyrażenia regularne

Dopasowywanie wyrażeń regularnych nie jest obsługiwane. Jeśli tworzysz skrypt pozycji pojedynczej, możesz użyć jednej z następujących metod jako obejścia problemu:

Szablony

Może być konieczna aktualizacja szablonu Liquid w celu zapewnienia obsługi skryptów i uniknięcia nieporozumień wśród klientów. Na przykład nie wszystkie szablony wyświetlają w koszyku rabaty na pozycje pojedyncze. W takim przypadku należy edytować szablon tak, aby wyświetlał rabaty na pozycje pojedyncze w koszyku. Dowiedz się więcej o rodzajach modyfikacji, które można wprowadzić w szablonach Liquid.

Zasoby

Ilość zasobów procesora i pamięci dostępnych dla skryptu jest ograniczona. Zasoby zarezerwowane dla skryptu zależą od wielkości koszyka i liczby obliczeń wymaganych przez skrypt. Shopify starannie śledzi te limity zasobów, aby upewnić się, że nie uniemożliwiają one działania skryptu zgodnie z przeznaczeniem.

Podczas testowania skryptu konsola aplikacji Script Editor wyświetla, jaki procent przydzielonych zasobów zużywa skrypt.

Wejście/wyjście

Z kilkoma wyjątkami skrypty Shopify Scripts nie obsługują operacji wejścia/wyjścia. Oznacza to, że skrypty nie mogą wykonywać żądań internetowych ani wywołań bazy danych i nie mogą pobierać danych wejściowych od użytkownika.

Metody puts można użyć do wyświetlania tekstu w konsoli aplikacji Script Editor.

Czas i losowość

Skrypty nie mogą zawierać obliczeń losowych ani opartych na czasie. Skrypty Shopify Scripts nie mają dostępu do obiektu Time i metody rand.

Ponieważ skrypty są uruchamiane za każdym razem, gdy przeliczana jest suma w koszyku, skrypty oparte na czasie lub generowaniu liczb losowych mogą dawać nieprzewidywalne lub mylące wyniki, jeśli klient często zmienia zawartość koszyka. Można jednak zaplanować uruchamianie skryptów podczas zdarzeń za pomocą aplikacji Launchpad.

Limit znaków w skrypcie

Możesz tworzyć skrypty o maksymalnej długości 40 960 znaków.

Zamówienia subskrypcyjne

Jeśli skrypty pozycji pojedynczych i wysyłki tworzą rabat na produkt subskrypcyjny, rabat ten ma zastosowanie do następujących płatności:

  • pierwszej płatności w ramach zamówienia z opcją płatności przy każdej dostawie; rabat nie jest stosowany do zaplanowanych zamówień
  • całej kwoty przedpłaconego zamówienia subskrypcyjnego

Dowiedz się więcej o subskrypcjach i skryptach.

Przyśpieszone realizacje zakupu

W przypadku korzystania ze skryptów Shopify Scripts razem z przyśpieszonymi realizacjami zakupu rabaty na wysyłkę są stosowane po wybraniu przez klienta przyśpieszonej metody płatności. Z tego powodu zmiany w cenie zamówienia nie są odzwierciedlane na urządzeniu lub w przeglądarce klienta. Klienci mogą widzieć pierwotną cenę na stronie przyśpieszonej realizacji zakupu, ale zostanie od nich pobrana prawidłowa, obniżona cena.

Shopify Punkt sprzedaży (POS)

Skrypty Shopify Scripts nie działają z aplikacją Shopify Point of Sale (POS).

Zmiana nazwy bramek płatniczych

Nie można zmienić nazwy bramek płatniczych, których nazwa jest wyświetlana w postaci obrazów lub logo. Można zmienić nazwę bramek płatniczych, obok nazwy których wyświetlane jest logo.

Wysyłka podzielona w kasie

Skrypty wysyłki są niekompatybilne z wysyłką podzieloną w Shopify Checkout. Jeśli używasz skryptów wysyłki i aktywujesz wysyłkę podzieloną, podzielone wysyłki nie będą wyświetlane klientom w kasie.