Skip to main content
configure(config) ustawia sposób działania koszyka. To wywołanie konfiguracyjne, więc jest bezpieczne na samej górze Twojego skryptu, zanim koszyk się załaduje.
Możesz wywołać je więcej niż raz — wartości się scalają. Późniejsze wywołanie nadpisuje tylko klucze, które wymienia, pozostawiając resztę bez zmian.
Przekazanie undefined czyści klucz, zamiast go pomijać. configure({ open_on_add_to_cart: undefined }) resetuje tę opcję do wartości domyślnej, odrzucając to, co ustawiło wcześniejsze wywołanie. Aby zostawić opcję w spokoju, całkowicie pomiń klucz.

Opcje


open_on_add_to_cart

Kontroluje, czy drawer otwiera się, gdy klient dodaje produkt.
Częstym zastosowaniem jest trzymanie drawera zamkniętego na jednej konkretnej stronie, pozostawiając ustawienie sprzedawcy nietknięte wszędzie indziej:
Jeśli po prostu chcesz to włączyć dla całego sklepu, to już jest ustawienie: Cart settings → Content → Behavior → Open cart when an item is added. Użyj configure, gdy odpowiedź zależy od strony, klienta lub czegoś, co zna tylko Twój kod.

open_on_background_add

Ustaw na true, aby otwierać drawer także przy dodaniach w tle — takich, które Aftersell wykrył, ale sam nie obsłużył. Dodanie liczy się jako dodanie w tle, gdy:
  • przyszło przez standardowe zdarzenia koszyka Shopify (zawsze traktowane jako tło, niezależnie od tego, co je wywołało), lub
  • Aftersell zobaczył żądanie koszyka w sieci bez zaufanego kliknięcia lub naciśnięcia klawisza w poprzedzających ~3 sekundach — np. inna aplikacja lub skrypt zapisujący do koszyka.
Dodanie, które Aftersell zobaczył w sieci i które nastąpiło po kliknięciu klienta, nie jest dodaniem w tle: już otwiera drawer zgodnie z open_on_add_to_cart, bez potrzeby tej opcji.
To dodatkowa bramka, a nie nadpisanie: dodanie w tle otwiera drawer tylko wtedy, gdy open_on_add_to_cart również by na to pozwoliło. Przy open_on_add_to_cart: 'never' ta opcja nic nie robi.
Sięgnij po to, gdy przycisk dodawania innej firmy poprawnie dodaje produkt, ale zostawia drawer zamknięty. Jeśli produkt w ogóle nie trafia do koszyka, to problem z przechwytywaniem. Zobacz skip_add_to_cart_interceptor i przypadek użycia page buildera.

validate_form_on_add_to_cart

Uruchamia natywną walidację formularza przeglądarki (reportValidity()) przed dodaniem i anuluje dodanie, jeśli formularz jest nieprawidłowy. Użyj tego, gdy formularz produktu ma wymagane pola (tekst graweru, notatka do prezentu, wymagany checkbox), które klienci mogą obecnie pomijać.
Przeglądarka pokazuje własny komunikat walidacji przy problematycznym polu. Domyślnie wyłączone, ponieważ motyw z przypadkowym atrybutem required gdzieś w formularzu produktu zacząłby inaczej po cichu blokować add-to-cart.

skip_add_to_cart_interceptor

Całkowicie wyłącza przechwytywanie add-to-cart przez Aftersell. Aby dowiedzieć się, co robi przechwytywanie i jakie są wszystkie sposoby, by z niego zrezygnować, zobacz Przechwytywanie add-to-cart. Motyw wykonuje wtedy dodanie samodzielnie, a każdy skrypt nasłuchujący na tym submicie znów się uruchamia. Aftersell nadal śledzi żądanie koszyka w sieci, więc drawer otwiera się jak zwykle. Rezygnując z przechwytywania, nie tracisz tego. Na motywach, które Aftersell rozpoznaje, jego własny koszyk pozostaje bezczynny, więc nie zobaczysz dwóch koszyków. Na motywie, którego Aftersell nie rozpoznaje, motyw może otworzyć swój koszyk obok Twojego; zobacz Czy otworzy się też koszyk motywu?.
Ta opcja jest odczytywana raz, przy starcie. Działa tylko z wywołania konfiguracyjnego uruchamianego przed załadowaniem koszyka: Twojego skryptu Initialization. Ustawienie jej później (wewnątrz ready() lub z handlera zdarzenia) nie ma efektu i zawodzi po cichu.
To tępe narzędzie, które wyłącza przechwytywanie dla każdego formularza na stronie. Aby wyłączyć tylko jeden formularz, użyj zamiast tego hooka registerSkipAddToCartRule:

skip_open_cart_interceptor

Kliknięcie ikony koszyka otwiera drawer Aftersell. Aby robić to niezawodnie, Aftersell zatrzymuje kliknięcie, żeby nic innego na stronie go nie obsłużyło. To sprawia jednak, że Twoje skrypty również go nie widzą. Jeśli zdarzenie analityki lub piksela odpala się wszędzie oprócz ikony koszyka, to właśnie z tego powodu. Ustaw tę opcję na true, aby przestać wyciszać kliknięcie:
Twoi nasłuchujący uruchamiają się wtedy normalnie, a drawer nadal otwiera się dokładnie tak jak wcześniej. Kliknięcie nadal też nie prowadzi do /cart.
Ta opcja robi mniej, niż sugeruje jej nazwa. Nie pomija interceptora ikony koszyka. Powstrzymuje go jedynie od wyciszania pozostałych nasłuchujących. Aftersell dalej obsługuje kliknięcie i dalej otwiera Twój koszyk. Aby Aftersell całkowicie zignorował dany element, użyj zamiast tego klasy aftersell-cart-wont-open-cart; zobacz Przechwytywanie add-to-cart.
W przeciwieństwie do skip_add_to_cart_interceptor ta opcja jest odczytywana przy każdym kliknięciu, więc możesz ją ustawić w dowolnym momencie i zadziała natychmiast: z ready(), z handlera zdarzenia lub warunkowo per strona.
Niektóre motywy również reagują na kliknięcie ikony koszyka samodzielnie. Gdy Aftersell przestanie je wyciszać, motyw, który otwiera własny drawer, zrobi to obok Twojego. Jeśli po włączeniu tej opcji widzisz dwa koszyki, dodaj klasę aftersell-cart-wont-open-cart do ikony motywu i otwieraj koszyk z własnego handlera przy pomocy actions.open().

money_format

Nadpisuje format walutowy Shopify używany przez formatMoney. Domyślnie to format Twojego sklepu; jeśli jest niedostępny, ceny wracają do $X.XX.
Ponieważ configure scala wartości, a formatMoney odczytuje bieżącą wartość, możesz zmieniać format w czasie działania, np. gdy zadziała przełącznik waluty:
To zmienia sposób, w jaki SDK i koszyk wyświetlają ceny. Nie zmienia waluty, w której klient jest obciążany; za to odpowiada Shopify Markets.

Co dalej

  • Akcje: odczytuj i zmieniaj koszyk.
  • Hooki: kontrola per formularz i per pozycja, gdy configure jest zbyt szerokie.
  • Przypadki użycia: kompletne rozwiązania typowych potrzeb.