Zapisałeś, a w WordPress nie widać zmian: pięć miejsc, w których siedzi stara wersja
Gdy w WordPress nie widać zmian po zapisie, prawie zawsze winna jest pamięć podręczna, czyli kopia strony sprzed zmiany. Może siedzieć w przeglądarce, we wtyczce cache, na serwerze hostingu albo w CDN. Sprawdź stronę w oknie prywatnym, a potem czyść warstwy po kolei od przeglądarki do CDN. Rzadziej problem leży w edytorze.
Autor: Zespół TellMyShop. Piszemy o PrestaShop na podstawie pracy z zapleczem prawdziwych sklepów i testów na własnym sklepie testowym.
Aktualizacja: · 5 min czytania
Najpierw ustal: zapisało się czy nie
To pytanie rozdziela dwa różne problemy. Otwórz stronę w edytorze jeszcze raz, po odświeżeniu.
- W edytorze jest nowa wersja, na stronie stara. Zmiana zapisała się w bazie, a ktoś po drodze pokazuje starą kopię. To cache i reszta tego tekstu.
- W edytorze też jest stara wersja. Zmiana się nie zapisała. Najczęściej to wygasła sesja, konflikt wtyczki albo błąd serwera przy zapisie. Wtedy zajrzyj do sekcji o edytorze na końcu.
Drugie szybkie sprawdzenie: otwórz stronę w oknie prywatnym przeglądarki albo na telefonie z wyłączonym Wi-Fi. Wtyczki cache zwykle omijają zalogowanych użytkowników, więc zalogowany widzisz świeżą stronę, a klient kopię.
Pięć warstw od przeglądarki do CDN
Stara wersja strony może siedzieć w jednym z pięciu miejsc. Każde czyści się w innym miejscu i robi to kto inny.
| Warstwa | Po czym poznasz | Gdzie wyczyścisz | Kto |
|---|---|---|---|
| 1. Przeglądarka | w oknie prywatnym widać nową wersję | twarde odświeżenie albo czyszczenie danych witryny | ty |
| 2. Wtyczka cache | zalogowany widzisz nowe, w oknie prywatnym stare | przycisk na górnym pasku kokpitu albo ustawienia wtyczki | ty |
| 3. Cache serwera | wtyczka wyczyszczona, dalej stare | panel hostingu, część o pamięci podręcznej | ty albo hosting |
| 4. CDN | w różnych miejscach różne wersje, adres przechodzi przez Cloudflare albo podobną usługę | panel CDN, czyszczenie wybranych adresów | ty albo osoba od domeny |
| 5. Zoptymalizowane pliki CSS i JS | treść nowa, wygląd stary | ustawienia wtyczki optymalizującej, ponowne wygenerowanie plików | ty |
Dokumentacja WordPressa o pamięci podręcznej wyjaśnia, że wtyczki cache zapisują gotowe strony jako pliki, żeby serwer nie budował ich za każdym razem. Dlatego po zmianie kopia musi zostać odświeżona. Jak działają najpopularniejsze z nich i co czyści każda opcja, pokazuje przewodnik Liquid Web o wtyczkach cache. Większość wtyczek odświeża kopię sama przy zapisie wpisu, ale nie zawsze przy zmianach w widżetach, menu, stopce albo ustawieniach motywu.
Kolejność czyszczenia krok po kroku
Czyść od warstwy najbliższej tobie. Po każdym kroku sprawdzaj stronę w oknie prywatnym, żeby wiedzieć, która warstwa była winna. To przyda się następnym razem.
- Twarde odświeżenie w przeglądarce. Na komputerze z Windows to zwykle Ctrl i F5, na Macu Cmd, Shift i R.
- Wyczyść wtyczkę cache. WP Rocket, LiteSpeed Cache, W3 Total Cache, WP Super Cache i podobne mają przycisk na górnym pasku kokpitu. Wybierz czyszczenie całości, a nie jednej strony, jeśli zmieniałeś menu albo stopkę.
- Wyczyść cache hostingu. Wiele polskich hostingów ma własną pamięć podręczną serwera, włączaną w panelu. Jeśli nie znajdziesz przycisku, zapytaj hosting.
- Wyczyść CDN. W Cloudflare możesz usunąć z pamięci wybrane adresy zamiast całej witryny. Instrukcja jest w dokumentacji czyszczenia pojedynczych adresów w Cloudflare.
- Wygeneruj ponownie pliki CSS i JS. Jeśli zmieniałeś wygląd, a nie treść, wyczyść w ustawieniach wtyczki optymalizującej połączone pliki stylów.
Jeśli po wszystkich pięciu krokach strona dalej jest stara, problem nie leży w cache.
Gdy to nie cache: edytor, motyw i szablony
Kilka sytuacji wygląda jak cache, a ma inną przyczynę.
Edytujesz nie tę stronę. Zdarza się przy kopiach stron, wersjach językowych albo szkicu, który leży obok opublikowanej strony. Sprawdź adres w pasku przeglądarki i w edytorze.
Treść pochodzi z szablonu. Nagłówek, stopka i niektóre sekcje strony głównej w motywach blokowych są częścią szablonu, a nie strony. Zmieniasz je w Wygląd, Edytor, a nie w edytorze strony.
Zmieniasz plik motywu, który nie jest aktywny. Jeśli strona używa motywu potomnego, zmiany w motywie nadrzędnym mogą być nadpisane. Odwrotnie też: zmiana w pliku motywu nadrzędnego zniknie przy jego aktualizacji.
Zapis się nie udał. Gdy po odświeżeniu edytora zmiany nie ma, sprawdź w Narzędzia, Zdrowie witryny, czy działa REST API, i zapytaj osobę od strony o dziennik błędów. Edytor blokowy zapisuje przez REST API, więc jego blokada przez wtyczkę bezpieczeństwa albo serwer daje taki objaw.
Jak Claude sprawdza, co widzi odwiedzający
Najtrudniejsze jest ustalenie, która warstwa jest winna. Wtyczka TellMyShop dla WordPress i WooCommerce pozwala Claude'owi porównać dwie rzeczy: treść zapisaną w bazie i stronę, którą dostaje odwiedzający bez logowania. Obie działają w darmowej wersji TellMyShop Free, razem z listą wtyczek, z której widać, jaka wtyczka cache jest zainstalowana.
Zmieniłem godziny otwarcia na stronie Kontakt, a klienci dalej widzą stare.
W bazie strona Kontakt ma nowe godziny, od 9 do 18. Strona, którą dostaje odwiedzający bez logowania, pokazuje stare, od 8 do 16. Na liście wtyczek jest włączona LiteSpeed Cache.
Wniosek: zmiana jest zapisana, a odwiedzający najpewniej dostają starą kopię z pamięci wtyczki. Mogę ją wyczyścić, gdy włączysz przełącznik Motyw. Podgląd:
było: pamięć podręczna WordPressa i LiteSpeed Cache: zapisane kopie stron
będzie: pamięć wyczyszczona, strony zbudują się od nowa
Włączyłem. Wyczyść.
Wyczyszczone. Sprawdziłem stronę Kontakt jeszcze raz bez logowania: odwiedzający widzą nowe godziny.
Godziny i daty w tej rozmowie są przykładowe. Czyszczenie pamięci WordPressa i popularnych wtyczek cache działa w TellMyShop Pro po włączeniu przełącznika Motyw. Przełącznik działa 24 godziny i wymaga dzisiejszej kopii bazy. Jak każdy zapis, czyszczenie ma podgląd i czeka na twoje „tak”. Cache hostingu i CDN czyścisz w ich panelach, bo wtyczka nie ma do nich dostępu.
Jeśli często zmieniasz te same teksty na wielu stronach, przyda się poradnik jak edytować stronę WordPress. Gdy strona nie wyświetla się w ogóle, a nie tylko w starej wersji, przejdź do tekstu Strona WordPress nie wyświetla się w Google. Wersje Free i Pro porównasz w cenniku, darmową wersję pobierzesz na stronie TellMyShop Free, a więcej poradników jest na blogu.
Pytania i odpowiedzi
Dlaczego ja widzę zmiany, a klient nie?
Wtyczki cache często nie pokazują zapisanej kopii zalogowanym użytkownikom. Ty, zalogowany, widzisz świeżą stronę, a klient dostaje kopię sprzed zmiany. Sprawdzaj efekt zawsze w oknie prywatnym, bez logowania.
Jak wyczyścić cache w WordPress?
Zależy od tego, gdzie jest cache. Wtyczka cache ma przycisk czyszczenia na górnym pasku kokpitu albo w swoich ustawieniach. Cache hostingu czyścisz w panelu hostingu, a CDN, na przykład Cloudflare, w jego panelu. Sam WordPress nie ma jednego przycisku dla wszystkich warstw.
Zmiany w CSS nie działają. Co sprawdzić?
Najpierw cache przeglądarki i wtyczki, która łączy i zmniejsza pliki CSS, bo trzyma ona starą wersję pliku. Potem upewnij się, że edytujesz dodatkowy CSS albo motyw potomny aktywnego motywu, a nie motyw, który jest tylko zainstalowany.
Czy wyczyszczenie cache może coś zepsuć?
Zwykle nie. Strona przez chwilę może działać wolniej, bo kopie budują się od nowa. Nie wyłączaj natomiast wtyczki cache na stałe tylko po to, żeby zobaczyć zmiany, bo strona będzie wolniejsza dla wszystkich.
Kliknąłem Aktualizuj, a po odświeżeniu edytora zmian nie ma. To też cache?
Raczej nie. Jeśli zmiana zniknęła w samym edytorze, nie zapisała się w bazie. Częste przyczyny to wygasła sesja logowania, konflikt wtyczki albo blokada zapisu po stronie serwera. Sprawdź Narzędzia, Zdrowie witryny i dziennik błędów.
WordPress jest znakiem towarowym WordPress Foundation. WooCommerce jest znakiem towarowym Automattic Inc. Claude jest znakiem towarowym Anthropic. TellMyShop nie jest powiązany z żadnym z tych podmiotów.