Sama świadomość, że coś się zmieniło, rzadko wystarcza. Proces zazwyczaj musi wiedzieć, jak wyglądała sytuacja wcześniej: czy cena spadła, czy wzrosła, o ile, który tag został dodany, jaką wartość miało metapole wczoraj. Niniejsza aktualizacja udostępnia zarówno stare, jak i nowe wartości w całej aplikacji oraz umożliwia uruchomienie procesu przez niestandardowy wyzwalacz nawet wtedy, gdy w ogóle nic się nie wydarzyło.
Stare i nowe wartości - wszędzie
- Wyzwalacze pól meta zawierają teraz poprzednią wartość. Każdy wyzwalacz pola meta (ogólny, produktu, wariantu, zamówienia, klienta) przekazuje do Shopify Flow
Metafield.previousValue obok Metafield.value. Jest on pusty, gdy pole meta zostało właśnie utworzone. Zobacz Wyzwalacze pól meta.
- Zmiany ceny, ceny jednostkowej i kosztu są przedstawiane w postaci liczb. Warunki w Shopify Flow nie obsługują operacji arytmetycznych, dlatego warunki Zmiana ceny wariantu, Zmiana ceny jednostkowej wariantu oraz Zmiana kosztu wariantu produktu przekazują teraz również wartości
delta (nowa wartość minus stara), percentChange oraz direction (wzrost, spadek, bez zmian). „Cena spadła o ponad 10%” stanowi obecnie jeden warunek, bez konieczności pisania kodu.
- Powiadomienia o aktualizacji produktu, zamówienia i klienta informują Państwa o tym, co uległo zmianie. Wcześniej informowały one jedynie o tym, że rekord został zaktualizowany. Obecnie zawierają one
changes: listę zmienionych pól oraz, dla każdego z nich, starą i nową wartość. Śledzone pola to: tytuł, opis, status, tagi, dostawca, typ i identyfikator dla produktów; status płatności, status realizacji, pozycje zamówienia, tagi, uwaga i dodatkowe szczegóły dla zamówień; tagi, uwaga i stan konta dla klientów. Długie wartości są skracane. Lista jest pusta, gdy aktualizacja nie dotyczyła tych pól, na przykład w przypadku zmiany stanu magazynowego.
- Funkcja Zmiany w pozycjach projektu zamówienia generuje obecnie takie same porównania pozycji po pozycji, jak w przypadku wyzwalacza zamówienia: co zostało dodane, usunięte lub zmienione pod względem ilości, ceny lub wariantu.
- Państwa własny, niestandardowy kod wyzwalacza również odczytuje zarówno starą, jak i nową wartość. niestandardowy wyzwalacz powiązany z aktualizacją produktu, zamówienia lub klienta otrzymuje teraz
payload._changes: wszystkie śledzone pola, które uległy zmianie, wraz z wartościami oldValue i newValue. Dzięki temu Państwa kod może zostać uruchomiony w momencie przejścia, a nie w oparciu o stan - np. „status zmienił się z wersji roboczej na aktywny”, „zamówienie zostało opłacone” - czego nie da się wyrazić za pomocą warunku opartego na bieżącej wartości. Przykładowe zdarzenie, które można zarejestrować w edytorze, pokazuje to pole.
Wszystko ma charakter addytywny. Utworzone już przepływy pracy działają bez zmian. Pełna lista pól dla każdego wyzwalacza znajduje się w opisie wyzwalaczy.
Proszę wybrać, które zmiany powodują uruchomienie wyzwalacza „Update”
Opcje „Aktualizacja produktu”, „Aktualizacja zamówienia” oraz „Aktualizacja danych klienta” posiadają nowe ustawienie, dostępne po kliknięciu ikony koła zębatego obok odpowiedniego przełącznika na stronie „Wyzwalacze”: które określa, co powoduje uruchomienie danej akcji.
- Nie zaznaczono żadnej opcji: wyzwalacz uruchamia się przy każdej aktualizacji, dokładnie tak jak dotychczas.
- Zaznaczone pola: operacja jest uruchamiana wyłącznie w przypadku zmiany wartości w jednym z nich. Wszystkie pozostałe aktualizacje są pomijane i nie są wliczane do Państwa pakietu.
Jest to również skuteczny sposób na zapobieżenie samoczynnemu uruchamianiu się przepływu pracy. Przykładem może być przepływ pracy, który uruchamia się po aktualizacji produktu, a następnie zapisuje metapole produktu wykorzystywane do ponownego uruchomienia tego przepływu. Proszę ograniczyć wyzwalacz do pól, które są dla Państwa istotne, a druga aktualizacja nie spowoduje już uruchomienia przepływu pracy.
Wybór ten nie ma wpływu na pozostałe czynniki wyzwalające. Ograniczenie aktualizacji zamówienia wyłącznie do statusu płatności nie zmienia momentu uruchomienia zdarzenia „Dodano tagi zamówienia”.
Niestandardowe wyzwalacze uruchamiane zgodnie z harmonogramem
Shopify Flow reaguje, gdy coś się dzieje. Nie może reagować, gdy nic się nie dzieje, i nie ma wglądu w sytuację poza Państwa sklepem. Teraz jest to możliwe dzięki wyzwalaczowi niestandardowemu. Edytor zadaje pytanie: „Co powoduje uruchomienie tej akcji: jedno zdarzenie w Shopify czy zgodnie z harmonogramem?”. W przypadku opcji „Zgodnie z harmonogramem” kod uruchamia się co 30 sekund, maksymalnie raz dziennie. Pamięta on, co wykrył podczas ostatniego uruchomienia, może odczytywać dane ze sklepu oraz wywoływać dowolne zasoby w publicznej sieci internetowej, a także samodzielnie decyduje, co uznaje za zmianę.
Proszę zacząć od szablonu i edytować liczby u góry:
- Produkt, zamówienie lub klient nieaktualizowane od N dni - nieaktualne recenzje w katalogu, zablokowane zamówienia, działania mające na celu odzyskanie klientów. Każdy rekord uruchamia się raz na okres braku aktywności; rekordy, które były już przeterminowane w momencie włączenia funkcji, nie uruchamiają się wszystkie naraz.
- Zmieniła się wartość poza platformą Shopify - dane dotyczące stanów magazynowych dostawcy, kurs walutowy, cennik. Wyświetla wartość przed i po zmianie, a także różnicę i wartość procentową w przypadku liczb.
- Nowy wpis w kanale RSS lub Atom - aktualności od dostawcy, kanał z listą produktów, strona informacyjna.
- Brak zamówień przez N godzin - sygnał kontrolny dla Państwa sklepu. Uruchamia się raz, gdy przestaną napływać zamówienia, i raz, gdy znów zaczną napływać.
Pierwsze uruchomienie zaplanowanego wyzwalacza zapamiętuje jedynie dane, które wówczas wykryje, więc włączenie takiego wyzwalacza nigdy nie powoduje przeciążenia Państwa przepływów pracy. W Shopify Flow pojawia się on jako Wyzwalacz niestandardowy, filtrowany według swojego identyfikatora, a rekord jest przekazywany jako jego identyfikator. Każde uruchomienie wlicza się do limitu Państwa planu, niezależnie od tego, czy wyzwalacz zadziała, czy nie - edytor pokazuje, ile uruchomień obejmuje dany interwał. Opcja Test uruchamia kod jednokrotnie bez wywoływania żadnych działań.
Szablony niestandardowych wyzwalaczy opartych na zdarzeniach
Niestandardowe wyzwalacze, które reagują na zdarzenia w Shopify, mają teraz również szablony. Wybierz jeden z nich w sekcji Rozpocznij od szablonu, a system automatycznie wybierze zdarzenie i wypełni kod. Każdy z nich odczytuje wartość przed i po zmianie:
- Pole produktu, zamówienia lub klienta uległo zmianie z jednej wartości na inną - na przykład status zmienił się z „wersja robocza” na „aktywny” lub zamówienie zostało opłacone.
- Cena spadła o ponad N procent - to prawdziwa obniżka, a nie zwykła zmiana ceny.
- Stan zapasów spadł poniżej progu - sygnał wyzwalany jest jednokrotnie, w momencie przekroczenia tej granicy, a nie przy każdej sprzedaży, gdy poziom zapasów jest już niski.
- Wartość pola meta produktu przekroczyła próg - ocena spadła poniżej 3, a marża wzrosła powyżej 40.
- Zamówienie opłacone przez klienta o wysokiej wartości - pobiera dane dotyczące łącznych wydatków klienta w Państwa sklepie za pomocą funkcji
ctx.shopify() i uruchamia się wyłącznie w przypadku przekroczenia ustalonej przez Państwa kwoty.
Zdarzenia wyzwalające rekordu na jego własnej stronie administracyjnej
Nowe bloki w panelu administracyjnym wyświetlają najnowsze zdarzenia wyzwalające dotyczące przeglądanego rekordu bezpośrednio na jego stronie w panelu administracyjnym Shopify, a każde z nich zawiera krótką informację w formacie „stare -> nowe”, np. price: 100.00 -> 85.00. Stamtąd można otworzyć dane zdarzenie lub przejść do widoku historii zdarzeń dla tego konkretnego rekordu.
Dostępne dla produktów, wariantów, zamówień, szkiców zamówień, klientów, kolekcji, firm i lokalizacji firm. Proszę dodać ten blok jednorazowo z menu dostosowywania strony. Wyzwalacze przetwarzające dane osobowe są wymienione bez podania ich wartości. Jak je dodać - na przykładzie strony produktu, zamówienia i klienta: Zdarzenia wyzwalające na stronie administracyjnej rekordu.
Więcej dostawców rozwiązań AI dla funkcji „Generate with AI”
Funkcja Generuj za pomocą AI działa teraz nie tylko z Anthropic i OpenAI, ale także z Google Gemini i OpenRouter. OpenRouter zapewnia dostęp do modeli wielu firm za pomocą jednego klucza, w tym do dowolnego modelu, którego identyfikator wpiszesz. Proszę podłączyć klucz w sekcji Developer -> Connections: uzyskaj klucz API Gemini lub uzyskaj klucz API OpenRouter. Tak jak dotychczas, generowanie odbywa się na Państwa własnym koncie dostawcy, a klucz jest szyfrowany i nigdy więcej nie jest wyświetlany.
Szybszy interfejs oparty na komponentach internetowych Shopify
Każda strona aplikacji została przebudowana w oparciu o nowe komponenty internetowe panelu administracyjnego Shopify - te same elementy składowe, z których korzysta sam panel administracyjny Shopify.
- Szybsze ładowanie. Aplikacja nie zawiera już własnej kopii biblioteki interfejsu. Komponenty pochodzą z serwisu Shopify, są współdzielone z pozostałą częścią panelu administracyjnego i zazwyczaj znajdują się już w pamięci podręcznej przeglądarki, dzięki czemu każda strona wymaga pobrania znacznie mniejszej ilości danych przed wyświetleniem.
- Wygląda to jak panel administracyjny. Przyciski, tabele, przełączniki, okna dialogowe i formularze wyglądają i działają dokładnie tak samo, jak te, z których korzystają Państwo w pozostałych częściach platformy Shopify, łącznie z nawigacją za pomocą klawiatury i czytnikami ekranu.
- Aplikacja jest zawsze aktualna. Gdy Shopify wprowadza ulepszenia do swoich komponentów, aplikacja automatycznie je przejmuje bez konieczności aktualizacji z naszej strony.
Nic się nie zmieniło: każda strona, każda opcja i każdy link pozostały na swoim miejscu.
Ponadto w tej wersji
- Opcje Przyznaj wszystkie i Cofnij wszystkie na stronie Uprawnienia. Opcja „Przyznaj wszystkie**”** wyświetla prośbę o przyznanie wszystkich brakujących uprawnień w jednym oknie dialogowym Shopify, zamiast osobno dla każdej karty. Opcja „Cofnij wszystkie” wymaga najpierw potwierdzenia i zawiera wyjaśnienie, co to oznacza: Państwa wyzwalacze pozostaną włączone, ale nie będą mogły się uruchamiać, dopóki ponownie nie przyznają Państwo dostępu.
- Niestandardowy kod wyzwalacza może nawiązywać połączenia z publiczną siecią internetową za pomocą funkcji
ctx.fetch(), a nie tylko z Państwa sklepem za pomocą funkcji ctx.shopify(). Adresy wewnętrzne są odrzucane.
- Państwa niestandardowe wyzwalacze oraz wyzwalacze sklepu internetowego działają teraz w ten sam sposób: proszę kliknąć wiersz, aby go edytować; status wyświetla się po prawej stronie.
- Na stronie Wyzwalacze obok tytułu wyświetlana jest liczba aktywnych wyzwalaczy, a cztery wyzwalacze oparte na polach metadanych typu tekstowego mają teraz własne przełączniki na liście.
- Pola obowiązkowe są oznaczone w formularzach wyzwalaczy niestandardowych, wyzwalaczy sklepu internetowego oraz połączeń.
- Naprawiono: nie można było wyczyścić filtra daty w sekcji Historia zdarzeń. Usunięcie znacznika daty lub wybranie opcji „Wyczyść wszystko” nie powodowało usunięcia zastosowanych dat. Obecnie obie te opcje powodują ich wyczyszczenie.
- Wiersze w sekcji „Historia zdarzeń” mają postać zwykłego tekstu, a nie niebieskich linków. Nadal można kliknąć cały wiersz.