„Znajomy mi powiedział, że moja strona się wlecze”. To zdanie zaczyna u mnie mniej więcej co dziesiątą rozmowę. Właściciel firmy zwykle nie widzi problemu, bo jego przeglądarka trzyma stronę w pamięci i otwiera ją natychmiast. Ktoś, kto wchodzi pierwszy raz, z telefonu, z zasięgiem na trzy kreski, widzi zupełnie co innego.
Powolna strona rzadko ma jedną przyczynę. Prawie zawsze jest to suma kilku drobiazgów, z których każdy dokłada pół sekundy. Opisuję osiem, na które trafiam najczęściej, pogrupowanych tak, jak się je naprawia — od tych dających największą różnicę.
To, co przeglądarka musi pobrać
Przyczyna pierwsza: zdjęcia prosto z aparatu. Telefon robi zdjęcie o szerokości pięciu tysięcy pikseli i wadze pięciu megabajtów. Na stronie ten obrazek wyświetla się w kaflu szerokim na czterysta pikseli, ale przeglądarka i tak musi najpierw pobrać cały plik. Dziesięć takich zdjęć na stronie głównej to kilkadziesiąt megabajtów do ściągnięcia przez łącze komórkowe. Poprawka jest prosta: przeskalowanie, kompresja i konwersja do formatu WebP, który przy tej samej jakości waży zwykle o połowę mniej niż JPG. Pojedyncze zdjęcie powinno mieścić się w 150–300 KB.
Przyczyna druga: fonty ładowane z zewnątrz. Motywy i kreatory stron domyślnie pobierają kroje pisma z serwerów Google. Każdy taki font to dodatkowe połączenie do obcego serwera, a często pobierany jest cały zestaw grubości, z których używasz dwóch. Przeniesienie fontów na własny serwer i ograniczenie ich do dwóch krojów skraca ładowanie o kilkaset milisekund i przy okazji porządkuje sprawę przekazywania danych, o której mówi polityka prywatności.
Kod, który musi się wykonać
Przyczyna trzecia: za dużo wtyczek, zwłaszcza nieużywanych. Każda aktywna wtyczka dokłada swój kod do każdej podstrony. Widziałam strony z trzydziestoma wtyczkami, z których połowa była włączona „na próbę” dwa lata temu. Szczególnie kosztowne są te, które dodają własne skrypty i style wszędzie, choć używasz ich w jednym miejscu — na przykład wtyczka do slidera działająca tylko na stronie głównej. Zdrowy zakres dla strony firmowej to kilkanaście wtyczek.
Przyczyna czwarta: motyw, który waży więcej niż treść. Kupione motywy uniwersalne mają wbudowane wszystko: sklep, portfolio, forum, animacje, kilkadziesiąt gotowych układów. Nawet jeśli używasz jednego, kod pozostałych w dużej części ładuje się razem ze stroną. Do tego dochodzą efekty przy przewijaniu, które wyglądają dobrze na komputerze projektanta i topornie na czteroletnim telefonie.
Brak pamięci podręcznej
Przyczyna piąta. WordPress przy każdym wejściu składa stronę od nowa: odpytuje bazę danych, wykonuje kod, buduje gotowy dokument. Pamięć podręczna, czyli cache, zapisuje wynik tej pracy i podaje go kolejnym odwiedzającym od razu. Różnica bywa kilkukrotna i jest to najtańsza optymalizacja, jaka istnieje — dobre wtyczki cache są bezpłatne.
Jedno zastrzeżenie: cache maskuje inne problemy. Jeśli po jego wyłączeniu strona zwalnia trzykrotnie, pod spodem jest coś nie tak z serwerem albo z kodem i prędzej czy później to wyjdzie, na przykład przy pierwszym wejściu na świeżo opublikowaną podstronę.
Serwer i droga do odwiedzającego
Przyczyna szósta: hosting za 60 zł rocznie. Tania usługa współdzielona oznacza, że na jednej maszynie stoi kilkuset klientów i dzielą się jej mocą. Objaw jest charakterystyczny: strona działa różnie w zależności od pory dnia, a panel administracyjny zamula bardziej niż część widoczna dla odwiedzających. Żadna optymalizacja obrazków tego nie naprawi. Sensowny hosting dla strony firmowej to wydatek rzędu 200–500 zł rocznie.
Przyczyna siódma: brak CDN przy zasięgu ponadlokalnym. CDN to sieć serwerów rozstawionych w różnych miejscach, które podają pliki Twojej strony z punktu najbliższego odwiedzającemu. Jeśli wszyscy Twoi klienci są z powiatu, korzyść jest znikoma. Jeśli sprzedajesz w całej Polsce albo za granicę, różnica staje się odczuwalna, a podstawowe plany bywają darmowe.
Zapuszczona baza danych
Przyczyna ósma. WordPress zapisuje każdą wersję roboczą wpisu, każdy komentarz spamowy i każdą tymczasową daną zostawioną przez wtyczki. Po kilku latach baza potrafi urosnąć do rozmiarów, w których każde zapytanie trwa zauważalnie dłużej, a najbardziej widać to w panelu administracyjnym i w wyszukiwarce wewnętrznej sklepu.
Porządkowanie bazy to zwykle godzina pracy, ale robi się je po wykonaniu kopii zapasowej, nigdy na żywo i nigdy w piątek po południu.
Od czego zacząć u siebie
Kolejność ma znaczenie, bo pierwsze dwa kroki dają zwykle większość efektu przy niewielkim nakładzie pracy.
- Zmierz stan wyjściowy w PageSpeed Insights i zapisz wynik dla wersji mobilnej — bez tego nie ocenisz, czy cokolwiek pomogło.
- Zajmij się zdjęciami, potem wtyczkami.
- Włącz pamięć podręczną i zmierz ponownie.
- Dopiero jeśli to nie wystarczy, rozmawiaj o hostingu, fontach i motywie.
Przy typowej stronie firmowej pełne przejście przez tę listę to od czterech do ośmiu godzin pracy i zwykle skraca czas ładowania o połowę albo więcej. Jeśli wolisz nie robić tego samodzielnie, dokładnie taki zakres obejmuje optymalizacja szybkości — z pomiarem przed i po, żeby było widać, za co zapłaciłeś.
Jeśli Twoja strona ładuje się wolno, a nie wiesz, od czego zacząć — napisz, zmierzę ją i powiem, które trzy zmiany dadzą najwięcej. Zajmuję się zdjęciami, wtyczkami, pamięcią podręczną i konfiguracją serwera, a na koniec pokazuję wynik przed i po; na start potrzebuję adresu strony oraz dostępu do panelu WordPressa.
Ewelina Grzelak, EWELA design
tel. +48 511 254 321
e-mail: biuro@eweladesign.pl
Zobacz pakiety i ceny