Wymagania i ograniczenia dotyczące skryptów
Do tworzenia skryptów potrzebny jest plan Shopify Plus i aplikacja Script Editor. Musisz także znać język programowania Ruby lub skorzystać z usług programisty lub eksperta Shopify, który zna ten język. Dowiedz się więcej o zatrudnianiu ekspertów Shopify.
Istnieją pewne ograniczenia dotyczące skryptów, które mają na celu zwiększenie bezpieczeństwa i zapewnienie, by skrypty działały bez względu ilość klientów, którzy odwiedzają Twój sklep w danym momencie. Pamiętaj o poniższych ograniczeniach, tworząc skrypty dla swojego sklepu Shopify.
Sklep online i API witryny sklepu
Podczas tworzenia lub edycji skryptu możesz określić, czy będzie on uruchamiany tylko w sklepie online, czy w sklepie online i w poniższych aplikacjach:
- Niestandardowe aplikacje zbudowane za pomocą API witryny sklepu, JavaScript Buy SDK, Mobile Buy SDKs (Android i iOS)
- Niestandardowe aplikacje generujące procesy realizacji zakupu
- Platformy rozwoju aplikacji Tapcart i Plobal Apps
Aby skrypty działały, strona internetowa musi mieć wbudowaną funkcjonalność koszyka zakupów. Skrypty nie mogą być więc używane z kanałami sprzedaży Przycisk zakupu, Facebook ani Sprzedaż hurtowa.
Opublikowane skrypty
Jednocześnie można opublikować tylko jeden skrypt dla każdego typu skryptu. Na przykład możesz opublikować skrypt pozycji pojedynczych i skrypt stawek wysyłki, ale nie możesz jednocześnie opublikować dwóch skryptów pozycji pojedynczych.
Maksymalna liczba skryptów Shopify
Możesz utworzyć maksymalnie 200 skryptów Shopify.
Wersje robocze zamówień
Skrypty pozycji pojedynczych, skrypty wysyłki i skrypty płatności nie działają z wersjami roboczymi zamówień ani ze stroną realizacji zakupu dla wersji roboczych zamówień.
Metapola
Skrypty Shopify nie mają dostępu do metapól.
Atrybuty koszyka/realizacji zakupu
Skrypty Shopify Scripts nie mają dostępu do atrybutów koszyka Shopify Liquid. Możesz dodać te atrybuty do stron koszyka, aby zebrać dodatkowe informacje od klientów, ale nie możesz utworzyć skryptu, który ich używa.
Kody rabatowe
Skrypty mogą uzyskać dostęp do tego, czy zastosowano kod rabatowy, kwotę rabatu i typ rabatu (stała kwota, procent lub wysyłka), ale nie mogą uzyskać dostępu do sposobu jego zastosowania (koszyk lub specyficzna pozycja pojedyncza). Jako takie skrypty nie mogą uzyskać dostępu do sum po rabacie, a także nie mogą uzyskać dostępu do automatycznych rabatów.
Skrypty pozycji i wysyłki, które mają dostęp do rabatów zastosowanych do koszyka, nie są kompatybilne z kombinacjami rabatów. Metoda .discount_code może zwrócić tylko jeden kod rabatowy. Koszyki, które zawierają wiele kodów rabatowych przy użyciu 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ększyć ceny za wysyłkę.
Wyrażenia regularne
Dopasowywanie wyrażeń regularnych nie jest obsługiwane. Jeśli tworzysz skrypt pozycji pojedynczych, możesz zastosować jedną z następujących metod jako rozwiązanie alternatywne:
- metoda split
- metody start_with i end_with
- metoda include
Szablony
Konieczne może być zaktualizowanie szablonu Liquid na potrzeby obsługi skryptów i uniknięcia dezorientowania klientów. Na przykład, nie wszystkie szablony pokazują rabaty pozycji pojedynczych w koszyku. W takim przypadku musisz edytować szablon, aby konkretne rabaty pozycji pojedynczych były widoczne w koszyku. Dowiedz się więcej o typach modyfikacji, które możesz wprowadzić w szablonach Liquid.
Zasoby
Ilość zasobów procesora i pamięci dostępnej dla skryptu jest ograniczona. Zasoby zarezerwowane dla skryptu zależą od wielkości koszyka i liczby obliczeń wymaganych przez skrypt. Shopify dokładnie śledzi te limity zasobów w celu zapewnienia, by nie zaburzały działania skryptu zgodnie z przeznaczeniem.
Podczas testowania skryptu konsola aplikacji Script Editor drukuje procent alokowanych zasobów wykorzystywanych przez skrypt.
Wejście/wyjście
Z kilkoma wyjątkami skrypty Shopify nie obsługują wejścia/wyjścia. Oznacza to, że skrypty nie mogą wykonywać żądań sieciowych, wywołań bazy danych ani pobierać danych wprowadzanych przez użytkownika.
Metoda puts
może być jednak użyta do drukowania tekstu na konsoli w aplikacji Script Editor.
Czas i losowość
Skrypty nie mogą obejmować losowych ani opartych na czasie obliczeń. Skrypty Shopify nie mają dostępu do obiektu Time
i metody rand
.
Ponieważ skrypty są uruchamiane za każdym razem, gdy suma koszyka jest ponownie obliczana, wyniki wykonania skryptów opartych na czasie lub generowaniu liczb losowych mogłyby być nieprzewidywalne lub mylące, jeśli klient często zmienia koszyk. Możesz jednak zaplanować uruchamianie skryptów podczas wydarzeń za pomocą aplikacjiLaunchpad.
Limit znaków skryptu
Możesz tworzyć skrypty o długości do 24 576 znaków.
Zamówienia na subskrypcję
Jeśli Twoje skrypty Lineitem i wysyłki stosują rabat na produkt subskrypcyjny, to rabat ten dotyczy następujących płatności:
- pierwsza płatność tylko w przypadku płatności przy każdej dostawie; nie dotyczy zaplanowanych zamówień
- cała kwota przedpłaconego zamówienia na subskrypcję
Dowiedz się więcej na temat subskrypcji i skryptów.
Przyspieszone realizacje zakupu
Gdy korzystasz ze skryptów Shopify z przyspieszoną realizacją zakupu, mają zastosowanie rabaty na wysyłkę po wybraniu przez Twojego klienta przyspieszonej metody płatności. Z tego powodu zmiany w cenie zamówienia nie są odzwierciedlane na urządzeniu lub w przeglądarce klienta. Klienci widzą cenę oryginalną w swojej przyspieszonej realizacji zakupu, ale zostaną obciążeni właściwą, obniżoną ceną.
Punkt sprzedaży Shopify (POS)
Skrypty Shopify nie działają z Punktem sprzedaży Shopify (POS).
Zmiana nazwy bramek płatniczych
Nie można zmienić nazwy bramek płatniczych, które mają logo.