Jeśli wpis WordPress pozostaje w statusie „Zaplanowany”, publikuje się po czasie albo wyświetla komunikat „Nieudana publikacja”, sprawdź ustawienia wpisu, strefę czasową i działanie WP-Cron. Najczęstsze przyczyny to błędna godzina, wyłączony lub nieskuteczny WP-Cron, konflikt wtyczki, pamięć podręczna albo konfiguracja hostingu.
Spis treści
Jak rozpoznać problem z harmonogramem
Jednorazowe opóźnienie nie musi oznaczać stałej awarii. Na stronie o małym ruchu publikacja może nastąpić dopiero przy kolejnym żądaniu do witryny. Jeśli jednak wszystkie zaplanowane wpisy pozostają nieopublikowane, problem zwykle dotyczy mechanizmu wykonywania zadań lub konfiguracji WordPressa.
Sprawdź, czy problem dotyczy jednego wpisu, czy wszystkich publikacji zaplanowanych na przyszłość. Taki test pomaga odróżnić błąd konkretnego wpisu od problemu z harmonogramem całej instalacji.
Lista kontrolna przed zmianami
- Sprawdź status wpisu. Powinien mieć status „Zaplanowany”, a nie „Szkic” lub „Oczekuje na przegląd”.
- Porównaj zaplanowaną datę i godzinę z aktualnym czasem.
- Sprawdź, czy problem występuje tylko w jednym wpisie, czy we wszystkich zaplanowanych wpisach.
- Przed zmianami technicznymi wykonaj kopię zapasową strony i bazy danych.
Ręczne przełączenie statusu wpisu na „Opublikowany” może być obejściem dla pojedynczej publikacji. Nie naprawia jednak przyczyny, dlatego po opublikowaniu wpisu sprawdź działanie harmonogramu.
Sprawdź datę, godzinę i strefę czasową
- W dPanelu WordPressa przejdź do Ustawienia, a następnie do ustawień ogólnych.
- Sprawdź ustawienie strefy czasowej. Powinno odpowiadać lokalizacji, według której planujesz publikacje.
- Porównaj bieżącą datę i godzinę WordPressa z czasem lokalnym.
- Jeśli panel hostingu pokazuje czas serwera, porównaj go z czasem używanym przez WordPressa.
- Otwórz edycję wpisu i sprawdź ponownie datę oraz godzinę publikacji. Zapisz wpis jako „Zaplanowany”.
Zmiana strefy czasowej może wpłynąć na kolejne zaplanowane publikacje. Po jej wykonaniu sprawdź daty wpisów, które już oczekują w kolejce.
Jak działa WP-Cron i dlaczego publikacja może się opóźniać
WP-Cron to mechanizm WordPressa, który uruchamia zaplanowane zadania, w tym publikowanie wpisów. Nie jest stałym procesem działającym co minutę. Zwykle uruchamia się przy żądaniach do strony, na przykład podczas odwiedzin.
Gdy witryna ma mały ruch, między kolejnymi żądaniami może minąć dużo czasu. Wpis pozostanie wtedy w statusie „Zaplanowany” do momentu uruchomienia zadania. Opóźnienie wynikające z małego ruchu może być jednorazowe i nie oznacza trwałej awarii.
WP-Cron może być także wyłączony w pliku wp-config.php. To czynność wymagająca dostępu do plików instalacji lub hostingu. W niektórych konfiguracjach hosting zastępuje WP-Cron zadaniem systemowym. Oba rozwiązania muszą być ze sobą zgodne. Nie zakładaj, że jednocześnie należy włączać WP-Cron i konfigurować cron systemowy.
Diagnostyka WP-Cron krok po kroku
- W WordPressie otwórz narzędzie Stan witryny, znane także jako Site Health.
- Sprawdź komunikaty dotyczące zadań cron, żądań loopback i REST API. Błąd w którymś z tych obszarów może utrudniać wykonywanie zadań WordPressa.
- W narzędziach administracyjnych dostępnych w danej instalacji sprawdź, czy zaplanowane zadania są wykonywane i czy nie pozostają w kolejce.
- Przejrzyj logi PHP, serwera i WordPressa. Zwróć uwagę na błędy krytyczne, przekroczenie limitu pamięci, timeouty oraz blokady żądań.
- Jeśli masz dostęp do pliku
wp-config.php, sprawdź, czy konfiguracja nie blokuje WP-Cron. Przed edycją wykonaj kopię zapasową pliku.
Jeśli hosting używa crona systemowego zamiast WP-Cron, sprawdź w jego konfiguracji, czy zadanie jest aktywne i wykonuje właściwą instalację WordPressa. Nazwy opcji zależą od dostawcy hostingu, dlatego nie zmieniaj konfiguracji bez potwierdzenia, który mechanizm ma obsługiwać harmonogram.
Sprawdź wtyczki, motyw, cache i zabezpieczenia
Wtyczka lub motyw może wpływać na publikowanie, żądania REST API, cache, bezpieczeństwo albo tryb konserwacji. Pamięć podręczna może także opóźniać wyświetlenie już opublikowanego wpisu, dlatego sprawdź zarówno status w panelu WordPressa, jak i widok strony po wyczyszczeniu właściwego cache.
- Wykonaj kopię zapasową przed testem.
- Tymczasowo wyłącz wtyczki związane z cronem, publikacją, cache, bezpieczeństwem, optymalizacją lub trybem konserwacji.
- Testuj zmiany pojedynczo i zapisuj, którą wtyczkę wyłączono oraz jaki był wynik.
- Sprawdź publikację testowego wpisu zaplanowanego na najbliższy możliwy termin.
- Jeśli problem ustąpi, włączaj elementy kolejno, aby ustalić źródło konfliktu.
Nie edytuj bazy danych ani plików WordPressa bez kopii zapasowej i planu cofnięcia zmiany. Jeśli logi wskazują na błąd hostingu, limit zasobów lub blokadę żądań, przekaż te informacje do administratora hostingu albo pomocy technicznej.
Jak potwierdzić, że harmonogram działa
- Utwórz testowy wpis i zaplanuj go na najbliższy termin.
- Sprawdź, czy po terminie status zmienił się z „Zaplanowany” na „Opublikowany”.
- Potwierdź publikację w panelu WordPressa, a następnie sprawdź wpis na stronie.
- Jeśli wpis jest opublikowany w panelu, ale nie widać go na stronie, wyczyść odpowiednią pamięć podręczną i sprawdź ponownie.
- Obserwuj kolejny zaplanowany wpis. Jednorazowy sukces nie potwierdza jeszcze, że stała awaria została usunięta.
Po naprawie pozostaw włączone tylko jedno uzgodnione rozwiązanie obsługi harmonogramu: WP-Cron albo cron systemowy. Następnie sprawdź status kolejnych wpisów i komunikaty w narzędziu Stan witryny.
