
WordPress ma system wykonywania zaplanowanych zadań w tle. Ten system wykonuje wiele cennych zadań, np. czyszczenie danych wewnętrznych, sprawdzanie dostępnych aktualizacji oraz uruchamianie akcji, które pluginy powinny wykonywać o określonej porze lub regularnie, np. tworzenie okresowych Backupów twojej witryny.
Jeśli otrzymujesz komunikat, że planer cron jobs WordPress nie wykonuje żadnych zaplanowanych zadań, sprawdź poniższe powody:
Czy twoja witryna ma odwiedzających?
Jeśli nikt nie odwiedził twojej witryny od jakiegoś czasu, taka sytuacja jest oczekiwana. WordPress ma okazję cokolwiek zrobić tylko wtedy, gdy odwiedzający wchodzą na strony. Bez odwiedzających WordPress nie jest uruchamiany i nie może rozpocząć żadnych zaplanowanych zadań w tle. Komunikat ten nie jest zaskakujący, jeśli twoja witryna jest witryną staging lub deweloperską bez prawdziwych odwiedzających. Odwiedź kilka stron, a komunikat powinien zniknąć.
Czy tryb konserwacji WordPress jest aktywny?
Czy twoja witryna jest w trybie konserwacji? To wyłącza wszystkie zaplanowane zadania. Wyłącz więc tryb konserwacji, aby aktywować cron jobs WordPress.
Czy WP Cron jest aktywny czy wyłączony?
Planer WordPress można wyłączyć w konfiguracji witryny. WP STAGING ostrzeże cię, jeśli tak jest, i pokaże ostrzeżenie, że DISABLE_WP_CRON jest ustawione na true w wp-config.php twojej witryny.
Możesz to sprawdzić również ręcznie:
Poszukaj w pliku wp-config.php (znajdującym się w katalogu głównym instalacji WordPress) poniższej linii i usuń ją. Opcjonalnie możesz zmienić true na false:
define('DISABLE_WP_CRON', true);W tym przypadku wyłączenie może być czymś, co twoja firma hostingowa zrobiła celowo, więc miej świadomość, że mogą to wyłączyć ponownie. Jednak może to być również coś, co zrobiłeś celowo, znalazłszy inny sposób na wywoływanie planera WordPress, np. przez panel kontrolny dostawcy Hostingu.
W tym przypadku komunikat o DISABLE_WP_CRON jest oczekiwany. Musisz zatem upewnić się, że planer jest wywoływany wystarczająco często, by przetworzyć wszystkie zaplanowane zadania witryny.
Żadne zaplanowane Backupy nie zostaną uruchomione, dopóki nie skonfigurujesz systemu planera, by je wywoływał.
Pamiętaj też, że DISABLE_WP_CRON może być zdefiniowane w pliku innym niż wp-config.php. wp-config.php to po prostu najbardziej prawdopodobna lokalizacja. Jeśli otrzymujesz ostrzeżenie o DISABLE_WP_CRON, musi być gdzieś indziej, ale nie w wp-config.php. Najlepiej je wyszukać.
Czy połączenia loopback działają?
Niektórzy dostawcy Hostingu celowo, choć bez dobrego powodu, wyłączają połączenia „loopback”, które pozwalają WordPress uruchamiać planer. Dzieje się tak również, jeśli twoja witryna jest chroniona hasłem lub uruchamiasz witrynę staging, która nie jest otwarta dla publiczności.
Jeśli połączenia loopback nie działają (celowo wyłączone lub nie), możesz spróbować skorzystać z alternatywnego systemu planowania WordPress.
Dodaj gdzieś w środku pliku wp-config.php linię z następującą treścią:
define('ALTERNATE_WP_CRON', true);Nie dodawaj jej zbyt późno w pliku, bo nie odniesie skutku.
Czy cała twoja witryna jest chroniona hasłem?
Innym powodem, dla którego WP Cron i zaplanowane Backupy nie działają, może być to, że cała twoja witryna jest chroniona hasłem na poziomie HTTP. Można to zrobić plikiem .htaccess.
To również uniemożliwia działanie planera WordPress. Musisz skonfigurować serwer webowy, aby zezwalał na połączenia „loopback”, które umożliwiają połączenia z samym sobą. W przeciwnym razie planer WordPress i wszystko, co od niego zależy, przestanie działać. Jeśli używasz Apache i .htaccess, spróbuj dodać te dwie linie do sekcji kontroli dostępu w .htaccess:
Allow from 0.0.0.0
Satisfy AnyZastąp 0.0.0.0 adresem IP swojej witryny.
Czy używasz serwera Litespeed?
Sprawdź ten artykuł, jeśli używasz serwera Litespeed i twoje cron jobs WP nie działają.
Powiązane artykuły
- Wyłącz WordPress Cron wp-cron i aktywuj zewnętrzne cron jobs
- Jak wyłączyć cron jobs WordPress na witrynie staging
- Jak utworzyć zaplanowany Backup. Utwórz Backup o określonej porze
- Włącz log debugowania WordPress (tryb Debug)
- Jak wyłączyć Action Scheduler / Subscriptions WooCommerce na witrynie staging