Visser Labs – Wtyczki WooCommerce

  1. Strona główna
  2. Baza wiedzy
  3. WooCommerce Store Exporter Deluxe
  4. Jak zaplanować eksporty według czasu lokalnego

Jak zaplanować eksporty według czasu lokalnego

Jeśli chcesz, aby zaplanowany eksport w Store Exporter Deluxe uruchamiał się o określonej godzinie w Twojej strefie czasowej, użyj listy rozwijanej Strefa czasowa w kroku Planowanie. Jest to opisane w Jak zaplanować eksporty w Store Exporter Deluxe i automatycznie obsługuje zmiany czasu letniego. W tym przypadku nie potrzebujesz niczego z tej strony.

Ten artykuł dotyczy innego, bardziej zaawansowanego przypadku: uruchamiania zaplanowanego eksportu z prawdziwego crona na poziomie serwera (skonfigurowanego przez cPanel lub bezpośrednio na serwerze Linux) zamiast własnego harmonogramu wtyczki. Cron na poziomie serwera zawsze uruchamia się zgodnie z zegarem serwera, który jest zwykle ustawiony na UTC+0, niezależnie od wybranej strefy czasowej w wtyczce. Aby zewnętrzny cron uruchamiał się, powiedzmy, o 6 rano czasu lokalnego, musisz samodzielnie przeliczyć swój czas lokalny na czas serwera.

Wymagania wstępne

WymaganieSzczegóły
WtyczkaStore Exporter Deluxe jest aktywny i licencjonowany
Zaplanowany eksportJuż utworzony z pożądanymi ustawieniami. Zobacz Jak zaplanować eksporty w Store Exporter Deluxe, jeśli jeszcze go nie skonfigurowałeś.
Dostęp do crona na poziomie serweraDostęp do cPanel hostingu lub dostęp do linii komend serwera, aby dodać zadanie cron

Konwersja czasu lokalnego na czas serwera

Aby uruchomić cron o określonej lokalnej godzinie, przelicz ten czas lokalny na przesunięcie używane przez cron serwera, uwzględniając:

  • Twoje aktualne przesunięcie strefy czasowej od UTC.
  • Czas letni (DST), jeśli Twój region go stosuje.

Przykład: 6 rano czasu nowozelandzkiego, trzy razy w tygodniu

Załóżmy, że chcesz, aby eksport uruchamiał się o 6:00 rano czasu nowozelandzkiego, w każdy poniedziałek, środę i piątek.

W momencie pisania tego tekstu Nowa Zelandia używa UTC+12 (lub UTC+13 w czasie letnim). Aby zaplanować na 6:00 NZDT w czasie letnim, odejmij 13 godzin, aby przeliczyć na UTC:

6:00 NZDT → 17:00 UTC poprzedniego dnia

Oblicz swoje własne przesunięcie w ten sam sposób, używając aktualnego standardowego lub letniego przesunięcia Twojego regionu od UTC.

Konfiguracja zaplanowanego eksportu we wtyczce

Ponieważ cron na poziomie serwera obsługuje powtarzalność, nie ustawiaj również powtarzalnej częstotliwości we wtyczce. W przeciwnym razie uzyskasz zduplikowane pliki eksportu.

Otwórz WooCommerce → Store Export z menu administracyjnego WordPress, a następnie wybierz Scheduled Exports z sekcji EXPORTS na pasku bocznym.

  1. Otwórz harmonogram, który chcesz wywołać zewnętrznie.
  2. W kroku Scheduling ustaw Frequency na Manual.
    • To usuwa własne ustawienia powtarzalności, strefy czasowej i daty rozpoczęcia harmonogramu.
    • Uruchamia się tylko wtedy, gdy sam go wywołasz, za pomocą Execute Now lub crona, który zaraz skonfigurujesz.
Krok planowania Store Exporter Deluxe, Częstotliwość ustawiona na Ręczna, uruchamia się tylko na żądanie.

Konfiguracja crona na poziomie serwera

Aby wywołać eksport o Twojej przeliczonej godzinie, dodaj zadanie cron przez cPanel swojego hostingu lub bezpośrednio na serwerze Linux.

Zbuduj wyrażenie cron

Używając powyższego przykładu (6:00 NZDT, przeliczone na 17:00 UTC poprzedniego dnia, w poniedziałki, środy i piątki), wyrażenie cron to:

Minute : 0
Hour   : 17
Day    : *
Month  : *
Weekday: 0,2,4

Numeracja dni tygodnia w cron zaczyna się od 0 dla niedzieli. Ponieważ przeliczony czas UTC przypada na poprzedni dzień, poniedziałek/środa/piątek NZDT wypada w niedzielę/wtorek/czwartek UTC w tym przykładzie. Oblicz swój własny przesunięcie dnia tygodnia w ten sam sposób, jeśli Twoje przeliczenie przekracza północ.

Zbuduj polecenie wyzwalające

Zadanie cron musi wywołać ten sam adres URL ręcznego eksportu CRON opisany w Jak eksportować za pomocą ręcznego CRON:

curl "https://your-site.com/?action=woo_ce-cron&key=YOUR_SECRET_KEY&type=order&scheduled_export=100" > /dev/null 2>&1

Zastąp:

  • your-site.com własną domeną Twojego sklepu.
  • YOUR_SECRET_KEY kluczem Klucz tajny eksportu, który ustawiłeś w kroku 3 poniżej.
  • type typem eksportu, który skonfigurowałeś (na przykład order lub product). Musi to być prawidłowy typ eksportu, w przeciwnym razie eksport zakończy się błędem „nieprawidłowy typ eksportu”. Jego wartość jest następnie nadpisywana przez typ eksportu zapisany w samym zaplanowanym eksporcie, więc ustawienia zaplanowanego eksportu zawsze mają pierwszeństwo.
  • 100 identyfikatorem Zaplanowanego eksportu. Możesz go znaleźć, najeżdżając kursorem na link Edytuj dla tego harmonogramu na ekranie Zaplanowane eksporty: adres URL kończy się na /scheduled-exports/edit/<ID>, gdzie <ID> to potrzebna liczba.

Pełną listę obsługiwanych parametrów URL znajdziesz w Jak eksportować za pomocą ręcznego CRON.

Włącz dostęp CRON

  1. Otwórz WooCommerce → Store Export → Settings i wybierz kartę CRON Exports.
  2. Włącz przełącznik Enable CRON.
  3. Wprowadź wartość w polu Export Secret Key. Pozostawienie go pustym umożliwia nieograniczony dostęp do adresu URL wyzwalacza, dlatego ustawienie klucza jest zalecane dla każdego aktywnego sklepu.
Ustawienia Store Exporter Deluxe, zakładka Eksporty CRON, włącznik CRON włączony, a pole Klucz tajny eksportu puste.

Gdy przełącznik jest włączony i zadanie cron zostanie dodane do Twojego serwera, eksport zostanie uruchomiony o Twojej przeliczonej godzinie i pojawi się w sekcji Ostatnie harmonogramy na ekranie Zaplanowane eksporty.

Rozwiązywanie problemów

Moje zadanie cron na poziomie serwera nie wyzwala eksportu
Potwierdź, że zadanie cron jest faktycznie zainstalowane i działa na Twoim serwerze, niezależnie od wtyczki. Większość paneli cPanel hostingu ma sekcję Zadania Cron, w której można przeglądać istniejące zadania i czas ich ostatniego uruchomienia. Jeśli samo zadanie nigdy się nie uruchamia, skontaktuj się z dostawcą hostingu. Jeśli zadanie się uruchamia, ale eksport nie jest wyzwalany, odwiedź adres URL wyzwalający bezpośrednio w przeglądarce, aby sprawdzić, czy nie ma komunikatu o błędzie, i potwierdź, że przełącznik Włącz CRON i Klucz tajny eksportu pasują do tego, co znajduje się w adresie URL.
Mój eksport uruchamia się o niewłaściwej godzinie
Sprawdź ponownie swoje przeliczenie UTC, w tym czy obowiązuje czas letni w dniu, w którym zadanie jest uruchamiane. Potwierdź również, że wartość Dzień tygodnia w Twoim wyrażeniu cron uwzględnia wszelkie przesunięcia dnia spowodowane przeliczeniem, jak pokazano w powyższym przykładzie.

Często zadawane pytania

Czy potrzebuję tego, jeśli chcę, aby mój eksport uruchamiał się tylko o określonej lokalnej godzinie?
Nie. Zamiast tego użyj własnego pola wyboru Strefa czasowa wtyczki na etapie planowania. Jest ono przeznaczone dokładnie do tego przypadku i samo obsługuje czas letni. Podejście opisane w tym artykule jest przeznaczone tylko dla eksportów wyzwalanych przez rzeczywiste zadanie cron na poziomie serwera, a nie przez własny harmonogram wtyczki.
Co się stanie, jeśli ustawię opcję Częstotliwość harmonogramu na inną niż Ręczna, jednocześnie używając zadania cron na poziomie serwera?
Wtyczka uruchamia również eksport według własnego wewnętrznego harmonogramu, oprócz zadania cron na poziomie serwera, co powoduje tworzenie zduplikowanych plików eksportu. Ustaw Częstotliwość na Ręczna, aby wyzwalało je tylko zadanie cron.

Potrzebujesz więcej pomocy?

Jeśli używasz Store Exporter Deluxe i napotkasz problem, którego ten artykuł nie obejmuje, otwórz zgłoszenie pomocy technicznej, a nasz zespół pomoże Ci uruchomić eksport we właściwym czasie.

Jeśli używasz darmowego wtyczki Store Exporter, zapytaj na forum pomocy technicznej WordPress.org, a nasz zespół odpowie Ci tam.

Czy ten artykuł był pomocny?

Powiązane artykuły

Zasoby i pomoc