Cron to system zarządzania zadaniami na serwerze. WP-cron w WordPressie to funkcja, za pomocą której WordPress obsługuje zaplanowane zadania. WP-cron kontroluje takie podstawowe funkcjonalności jak cykliczne sprawdzanie aktualizacji, publikacja zaplanowanych postów, czy np. automatyczne anulowanie zamówień w WooCommerce po określonym czasie.
WP-cron jest wywoływany przy każdym przeładowaniu witryny opartej o WordPressa. W tym momencie sprawdzana jest lista zadań do wykonania. Jeśli system wykryje że któreś z zadań powinno się wykonać, zostanie ono wykonane. WP-cron, w przeciwieństwie do systemowego crona, nie dokonuje sprawdzenia listy zadań przez cały czas. Funkcja WP-cron jest wywoływana tylko podczas odwiedzania twojej strony internetowej, np. przeglądania stron produktowych.
To normalne, że użytkownicy nie odwiedzają twojego sklepu np. w środku nocy. Sekwencja wykonywania zadań nie zostanie aktywowana, jeżeli na stronie aktualnie nie ma ruchu. Jeśli twój sklep odwiedza mało osób, a chciałbyś zachować pełną automatyzację wykonywania zadań, wykonaj poniższe kroki.
Spis treści
Jak zastąpić wordpressowego crona serwerowym cronem?
Wyłączenie wykonywania funkcji WP-cron
Zacznij od wyłączenia skryptów które powodują wykonywanie funkcji WP-cron przy każdym odwiedzeniu twojej strony internetowej opartej o WordPressa. Edytuj plik wp-config.php znajdujący się w głównym katalogu strony i dodaj do niego linijkę:
Dodanie polecenia do serwerowego crona
Następnie najważniejsze: powinieneś dodać do serwerowego crona zadanie, które będzie automatycznie wyzwalać funkcję WP-cron co określony czas. Poniżej prezentujemy instrukcję dla systemu cPanel. Jeśli twój hosting korzysta z innego systemu zarządzania, kroki powinny być podobne:
Zaloguj się do systemu zarządzania hostingiem cPanel i wybierz Zadania cron (Cron jobs):
W kolejnym kroku dodaj nowe zadanie crona, podając jako polecenie następującą sekwencję:
Polecenie:
Zastąp frazę SKLEP_WOO.PL adresem swojego sklepu WooCommerce.
Wykorzystanie zewnętrznej usługi do uruchamiania crona
Jeśli twój hostingowy usługodawca nie daje ci możliwości dodania zadania crona w panelu zarządzania hostingiem, możesz skorzystać z darmowego serwisu cron-job.org. Robot automatycznie uruchomi wp-crona w twojej witrynie co określony czas. Cron WordPress nie będzie Cię ograniczał, a zadania cykliczne będą wykonywały się szybciej. Aby skorzystać z serwisu cron-job.org załóż konto i dodaj nowe zadanie:
W drugim polu wprowadź adres:
http://SKLEP_WOO.PL/wp-cron.php
Efekt końcowy
Dzięki powyższym krokom cron w twojej witrynie będzie wykonywany zawsze. Nawet wtedy kiedy ruch na niej będzie zerowy. Dzięki temu będziesz mieć pewność że cykliczne zadania core WordPressa oraz te wykonywane przez wtyczki WP Desk będą zawsze realizowane. Niektóre z nich to:
- generowanie plików XML dla porównywarek cen
- pobieranie listy punktów odbioru przesyłek dla wtyczek wysyłkowych
- pobieranie zamówień z Allegro do WooCommerce
- import produktów do sklepu za pomocą plików XML
- pobieranie opinii z Opineo do WooCommerce