Strona WordPress ładuje się bardzo powoli – diagnoza i rozwiązanie

Spis treści

Wprowadzenie – wpływ szybkości na SEO i UX

Wolna strona WordPress nie zawsze ma jedną przyczynę. Serwer może długo przygotowywać odpowiedź, ale równie dobrze problemem może być duże zdjęcie, skrypt zewnętrzny lub element przesuwający treść podczas ładowania. Od tego, co rzeczywiście opóźnia stronę, zależy właściwe rozwiązanie.

Szybkość wpływa na wygodę użytkowników i jest jednym z elementów doświadczenia strony uwzględnianych przez Google. Sam wysoki wynik w teście nie gwarantuje jednak wysokiej pozycji ani większej sprzedaży. Zacznij od pomiaru, a nie od instalowania kolejnych wtyczek.

Narzędzia do diagnozowania szybkości

Przetestuj w PageSpeed Insights nie tylko stronę główną, ale też podstronę, na której występuje problem, np. produkt lub artykuł. Sprawdź wynik dla telefonu i komputera. Raport może zawierać zarówno dane rzeczywistych użytkowników z ostatnich 28 dni, jeśli są dostępne, jak i wyniki pojedynczego testu laboratoryjnego. Te pierwsze zmieniają się stopniowo; drugie przydają się do porównań po zmianach.

  • LCP mierzy czas wyświetlenia największego elementu treści widocznego na ekranie; celem jest maksymalnie 2,5 s.
  • INP opisuje szybkość reakcji strony na interakcje; celem jest maksymalnie 200 ms.
  • CLS mierzy nieoczekiwane przesunięcia układu; celem jest maksymalnie 0,1.

Progi dotyczą 75. percentyla wizyt, osobno na urządzeniach mobilnych i komputerach. Są to cele dla danych użytkowników, nie obietnica wyniku pojedynczego testu. Więcej o metrykach znajdziesz w dokumentacji Web Vitals.

  1. Zapisz adres, porę i wyniki testu oraz informację, czy cache był już rozgrzany. Powtórz pomiar w podobnych warunkach.
  2. W raporcie sprawdź element LCP, czas odpowiedzi serwera i zasoby blokujące wyświetlanie. W karcie Network narzędzi przeglądarki lub w WebPageTest przejrzyj kolejność i czas pobierania plików.
  3. Jeśli długo trwa generowanie odpowiedzi, na kopii testowej użyj Query Monitor do sprawdzenia wolnych zapytań i wywołań. Wynik dla zalogowanego administratora może różnić się od wyniku gościa korzystającego z cache.
  4. Wybierz największy potwierdzony problem, zmień jedną rzecz i porównaj pomiary. Sprawdź także, czy funkcje strony nadal działają.

Optymalizacja obrazów

W raporcie sprawdź, czy elementem LCP jest zdjęcie lub baner. Jeśli tak, pobierz obraz w rozmiarze potrzebnym w danym miejscu, a nie oryginał z aparatu. Porównaj jakość i wielkość pliku po kompresji; WebP lub AVIF mogą być korzystne, ale wynik zależy od obrazu i sposobu jego dostarczania.

  • Korzystaj z rozmiarów generowanych przez WordPress i sprawdź, czy motyw poprawnie udostępnia srcset i sizes.
  • Podaj wymiary obrazów, aby przeglądarka mogła zarezerwować miejsce i ograniczyć przesunięcia układu.
  • Nie opóźniaj lazy loadingiem obrazu LCP widocznego od razu. Obrazy poniżej widocznego obszaru można ładować później.
  • Przed masową optymalizacją biblioteki zachowaj oryginały i kopię zapasową. Sprawdź wygląd kilku zdjęć oraz obsługę formatu na stronie.

Więcej przykładów znajdziesz w artykule Błędy, które spowalniają WordPressa – jak ich unikać?

Cache i CDN

Cache strony przechowuje gotową odpowiedź dla kolejnych odwiedzin, dzięki czemu serwer nie musi za każdym razem generować tej samej publicznej podstrony. Cache przeglądarki pozwala ponownie wykorzystać pobrane pliki. Trwały object cache, np. oparty na Redisie, przechowuje obiekty między żądaniami; jego przydatność zależy od witryny i konfiguracji serwera.

Najpierw sprawdź, czy hosting lub CDN nie zapewnia już cache. Nakładanie kilku mechanizmów bez znajomości ich ustawień utrudnia diagnozę i czyszczenie nieaktualnych treści. Po zmianie sprawdź stronę w oknie prywatnym oraz po zalogowaniu, a następnie potwierdź, że publikacja i edycja treści czyszczą właściwy cache.

Sklep i strony z kontami wymagają szczególnej uwagi: koszyk, zamówienie, konto klienta oraz odpowiedzi zależne od sesji lub użytkownika nie mogą być współdzielone między osobami. Uwzględnij też cookies i ustawienia wszystkich warstw cache. Sprawdź zalecenia WooCommerce dotyczące cache i przetestuj pełny proces zakupowy na środowisku testowym.

CDN może skrócić drogę zasobów do odbiorców i odciążyć serwer. Ma największy sens, gdy pomiary wskazują na opóźnienia sieciowe lub odbiorcy są rozproszeni geograficznie. Sam CDN nie naprawi wolnego kodu PHP ani błędnej konfiguracji cache.

Minimalizacja CSS i JavaScript

W narzędziach przeglądarki sprawdź, które pliki są duże, blokują wyświetlanie lub długo zajmują główny wątek. Najpierw usuń niepotrzebny widget albo skrypt z podstrony, na której nie jest używany. Minifikacja zmniejsza pliki, ale nie usuwa kosztu wykonania zbędnego kodu.

Łączenie plików nie zawsze pomaga, zwłaszcza przy HTTP/2 lub HTTP/3. Podobnie automatyczne usuwanie CSS może ukryć style potrzebne dopiero po kliknięciu. Opcje takie jak critical CSS, defer czy async wdrażaj pojedynczo: skrypty mają zależności, a zmiana kolejności ich wykonania może zepsuć stronę. Po każdej zmianie sprawdź menu, formularze i inne interaktywne elementy.

Wybór odpowiedniego hostingu

Jeśli serwer długo odpowiada również po wykluczeniu problemów z kodem i cache, sprawdź wykorzystanie CPU, pamięci, limity procesów PHP oraz czas pracy bazy danych. Porównaj odpowiedź dla strony z cache i bez niego. O interpretację danych i limity konta warto zapytać dostawcę hostingu.

Hosting współdzielony może wystarczyć mniejszej witrynie, a VPS daje większą kontrolę, ale wymaga administracji. Przed wyborem sprawdź limity zasobów, wsparcie, kopie zapasowe, możliwość ich przywrócenia oraz dostępność aktualnej, wspieranej wersji PHP zgodnej z motywem i wtyczkami. Nie zakładaj, że sam rodzaj serwera albo zmiana hostingu rozwiąże problem.

Jeśli migracja jest uzasadniona, wykonaj kopię plików i bazy, przetestuj witrynę na nowym serwerze przed zmianą DNS i zaplanuj sposób powrotu. W sklepie trzeba dodatkowo uwzględnić zamówienia i inne dane powstające w czasie przełączania.

Audyt pluginów i motywu

Liczba wtyczek sama w sobie nie mówi, czy strona jest wolna. Jedna wtyczka może wykonywać kosztowne zapytania lub ładować duży skrypt na każdej podstronie, a kilka innych może mieć niewielki wpływ. Sprawdź również zadania wykonywane w tle oraz zewnętrzne skrypty analityczne i reklamowe.

  1. Na kopii testowej porównaj podejrzaną podstronę przed wyłączeniem konkretnej wtyczki i po nim. Zmieniaj jeden element naraz.
  2. Sprawdź formularze, logowanie, funkcje sklepu i integracje. Nie wyłączaj na działającej stronie wtyczek od płatności, bezpieczeństwa czy kopii zapasowych tylko na potrzeby testu.
  3. Jeśli problem leży w motywie lub builderze, najpierw sprawdź jego ustawienia i zbędne elementy. Zmiana motywu może wymagać przebudowy wyglądu i funkcji, więc przetestuj ją osobno.
  4. Usuń nieużywaną wtyczkę dopiero po sprawdzeniu, czy jej dane i funkcje nie są potrzebne. Deinstalacja niektórych dodatków może usuwać dane.

Baza danych – optymalizacja i czyszczenie

Duża baza nie musi oznaczać wolnej strony. Najpierw znajdź konkretne wolne zapytanie i komponent, który je wykonuje. Query Monitor może pomóc na kopii testowej; przy problemach z obciążeniem serwera przydatna będzie także analiza dostępna u dostawcy hostingu.

Wersje wpisów, komentarze w koszu i wygasłe dane tymczasowe mogą zajmować miejsce, ale ich usunięcie nie gwarantuje przyspieszenia. Przed jakimkolwiek czyszczeniem wykonaj aktualną kopię bazy i plików oraz upewnij się, że potrafisz ją przywrócić. Nie usuwaj w ciemno opcji, tabel ani aktywnych danych tymczasowych: mogą być potrzebne wtyczkom, sesjom lub zadaniom w tle.

Zmiany indeksów i zapytań wymagają analizy konkretnego przypadku i testów. Nie ustawiaj automatycznego czyszczenia ani harmonogramu optymalizacji tabel wyłącznie dlatego, że baza ma dużo rekordów.

Lazy loading i asynchroniczne ładowanie

Lazy loading opóźnia pobieranie obrazów lub osadzonych elementów, które nie są jeszcze potrzebne. WordPress obsługuje natywny lazy loading dla wielu obrazów i iframe, dlatego przed instalacją dodatkowej wtyczki sprawdź wynikowy kod strony.

Dla obrazów poniżej widocznego obszaru można użyć loading="lazy". Nie stosuj go bezrefleksyjnie do głównego obrazu widocznego od razu, ponieważ może to opóźnić LCP. Zarezerwuj miejsce na obrazy i osadzone filmy, a po zmianie sprawdź stronę na telefonie oraz podczas przewijania. Ładowanie skryptów omówiliśmy wyżej w sekcji CSS i JavaScript.

Podsumowanie – strategia przyspieszenia

  1. Zmierz problematyczną podstronę i ustal, czy opóźnienie dotyczy serwera, zasobów czy interakcji.
  2. Popraw największą przyczynę: na przykład zbyt duży obraz LCP albo zbędny skrypt.
  3. Sprawdź istniejące warstwy cache i wykluczenia dla treści prywatnych. Nie dokładaj narzędzi bez potrzeby.
  4. Testuj zmiany na kopii, wykonuj kopie zapasowe i po każdej zmianie porównuj wyniki oraz działanie strony.
  5. Wracaj do danych użytkowników w PageSpeed Insights lub Search Console; pojedynczy wynik laboratoryjny nie opisuje całego doświadczenia odwiedzających.

Najczęstsze pytania

Jakie są prawidłowe wartości Core Web Vitals?

Dobre wartości to LCP do 2,5 sekundy, INP do 200 ms i CLS do 0,1. Ocenia się je na 75. percentylu wizyt, osobno dla urządzeń mobilnych i komputerów.

Czy zmiana motywu WordPress przyspieszy stronę?

Może pomóc, jeśli obecny motyw ładuje dużo niepotrzebnych zasobów lub wykonuje kosztowne operacje. Efekt zależy od witryny, dlatego przed zmianą warto porównać wyniki na kopii testowej.

Czy wtyczka cache zawsze rozwiązuje problem z szybkością?

Nie. Cache strony pomaga przede wszystkim przy powtarzanych wejściach na publiczne podstrony. Nie naprawi dużych obrazów, wolnych skryptów w przeglądarce ani każdego problemu z serwerem.

Czy duża liczba wtyczek lub wpisów spowalnia WordPress?

Sama liczba nie przesądza o wydajności. Znaczenie ma to, jakie operacje wykonują wtyczki, jak działają zapytania oraz ile zasobów ładuje dana podstrona.

Jak często czyścić bazę danych WordPress?

Nie ma jednego harmonogramu dla każdej witryny. Najpierw sprawdź, czy baza lub konkretne zapytania są przyczyną problemu. Przed usuwaniem danych wykonaj kopię i sprawdź możliwość jej przywrócenia.

Twoja strona WordPress ładuje się zbyt wolno? Pomożemy ustalić przyczynę i dobrać zmiany do Twojej witryny.