Przejdź do treści
Wydajność

Za dużo wtyczek WordPress - jak posprzątać?

Nie ma progu, po którym WordPress zwalnia. Jedna źle napisana wtyczka szkodzi bardziej niż dwadzieścia porządnych, więc pytanie nie brzmi ile, tylko które i po co. Sprzątanie ma dwa cele naraz. Pierwszy to wydajność, bo każda wtyczka dokłada zapytania i pliki. Drugi, ważniejszy, to bezpieczeństwo: nieaktualna wtyczka jest najczęstszą drogą włamania na WordPressa.

Ile wtyczek to za dużo?

Liczba sama w sobie nic nie znaczy. Znaczenie ma to, co wtyczka robi przy każdym wyświetleniu strony.

Rodzaj wtyczkiKoszt wydajnościowy
Działająca tylko w panelupraktycznie zerowy dla odwiedzających
Dokładająca skrypt na wszystkich podstronachstały, na każdym wejściu
Odpytująca zewnętrzną usługę na żywozależny od cudzego serwera
Kreator stronwysoki, dokłada kod do każdej strony
Zapisująca logi każdego zdarzeniarośnie z czasem, obciąża bazę

Praktyczny wniosek: pięćdziesiąt wtyczek działających w panelu jest mniej szkodliwe niż pięć odpytujących zewnętrzne usługi przy każdym wyświetleniu karty produktu.

Jak zmierzyć, która wtyczka spowalnia?

Zgadywanie po nazwach nie działa. Potrzebny jest pomiar.

Najprostsza metoda to porównanie czasu odpowiedzi przed i po wyłączeniu wtyczki, wykonane na kopii testowej witryny. Bardziej precyzyjne są narzędzia profilujące, które pokazują, ile czasu i ile zapytań przypada na każdą wtyczkę przy generowaniu konkretnej podstrony.

Mierz na tym szablonie, który ma ruch. Wtyczka nieobciążająca strony głównej potrafi dokładać sekundę na karcie produktu, bo dopiero tam się uruchamia.

Rekordzista, jakiego widzieliśmy, miał trzy wtyczki do formularzy, dwie do SEO i dwie do cache. Każda dołożona przez innego wykonawcę, żadna nieusunięta po zmianie koncepcji.
Krzysztof Czapnik, KC Mobile

Co usunąć w pierwszej kolejności?

  • Duplikaty funkcji. Dwie wtyczki SEO, dwie do cache, dwa systemy formularzy. Zostaje jedna, reszta wychodzi.
  • Wtyczki bez aktualizacji od ponad roku. To ryzyko bezpieczeństwa i pewny problem przy najbliższej zmianie wersji PHP.
  • Narzędzia jednorazowe. Wtyczki do migracji, importu produktów, masowej zmiany adresów. Miały zadanie, wykonały je i zostały włączone na lata.
  • Wtyczki zastępowalne linijką kodu. Dodanie skryptu analitycznego albo drobna zmiana wyglądu nie wymagają osobnej wtyczki z panelem ustawień.
  • Nieaktywne, ale zainstalowane. Nie spowalniają, ale nadal są kodem na serwerze i nadal mogą mieć podatność.

Przy każdej pozycji zadaj jedno pytanie: co się stanie, jeśli ją wyłączę. Jeśli nikt w firmie nie potrafi odpowiedzieć, to zwykle znaczy, że nic.

Jak usuwać bezpiecznie?

1. Zrób kopię zapasową plików i bazy, sprawdzoną pod kątem odtwarzania
2. Spisz listę wtyczek z krótką notatką, za co odpowiada każda
3. Wyłączaj pojedynczo, nie hurtem, i po każdej sprawdzaj stronę główną, kartę produktu, formularz i koszyk
4. Odczekaj kilka dni przed usunięciem, bo część funkcji ujawnia się dopiero przy konkretnym działaniu klienta
5. Dopiero potem usuń wtyczkę i posprzątaj po niej dane

Największe ryzyko dotyczy wtyczek dodających typy treści albo pola dodatkowe. Ich usunięcie nie kasuje danych, ale sprawia, że przestają być widoczne, co wygląda jak utrata treści. Przy takich zawsze warto sprawdzić, czy dane są nadal w bazie, zanim ktoś wpadnie w panikę.

Sprzątanie po usuniętych wtyczkach

Usunięcie wtyczki rzadko usuwa jej dane. W bazie zostają ustawienia, wpisy tymczasowe, własne tabele i pola przypisane do treści.

Przy witrynie działającej kilka lat te resztki potrafią ważyć więcej niż same treści. Nie spowalniają dramatycznie, ale wydłużają kopie zapasowe, migracje i zapytania przeszukujące tabelę ustawień.

Kolejność jest zawsze ta sama: kopia zapasowa, potem usuwanie danych osieroconych, nigdy odwrotnie. Sprzątanie bazy bez kopii to najprostsza droga do nieodwracalnej straty, a różnica między osieroconym wpisem a potrzebnym bywa jedną literą w nazwie.

Szerszy kontekst porządków w bazie opisujemy w poradniku jak przyspieszyć wolną stronę.

Audyt wtyczek: co spisać przed sprzątaniem

Przegląd zaczyna się od listy, nie od usuwania. Dla każdej pozycji warto zanotować cztery rzeczy: co robi, kto z niej korzysta, kiedy była ostatnio aktualizowana i czy istnieje lżejsza alternatywa.

Taka lista zwykle sama układa się w trzy grupy. Pierwsza to wtyczki, bez których sklep albo strona przestaną działać: płatności, wysyłka, formularz kontaktowy, kopie zapasowe. Druga to wygoda redakcyjna, czyli narzędzia ułatwiające pracę, ale zastępowalne. Trzecia to pozostałości po decyzjach sprzed lat.

Grupa trzecia bywa zaskakująco duża. Według naszego cennika sam audyt wtyczek wchodzi w zakres podstawowej optymalizacji, czyli 500-1500 zł, i przy witrynie utrzymywanej kilka lat prawie zawsze zwraca się w postaci mniejszej liczby awarii po aktualizacjach.

Przy okazji sprawdź, które wtyczki mają wersję płatną z wygasłą licencją. Taka wtyczka działa, ale nie dostaje aktualizacji bezpieczeństwa, co jest gorsze niż jej brak.

Ile można zyskać?

Zależy od tego, co usuwasz. Wyłączenie wtyczki działającej tylko w panelu nie zmieni nic dla odwiedzających. Usunięcie kreatora stron z witryny, która i tak używa go na trzech podstronach, potrafi zmienić wynik wyraźnie.

Dane z naszych wdrożeń pokazują typowo 20-40% skrócenia czasu generowania strony po usunięciu dziesięciu do piętnastu zbędnych wtyczek. Największa część tego zysku pochodzi zwykle z dwóch, nie z całej dziesiątki.

Drugi zysk jest trudniejszy do zmierzenia, ale realny: mniej wtyczek to mniej aktualizacji, mniej konfliktów przy zmianie wersji PHP i mniejsza powierzchnia ataku. Przy witrynie utrzymywanej latami to oszczędność większa niż sam czas ładowania.

Warto policzyć to od strony czasu. Każda wtyczka wymaga sprawdzenia po aktualizacji, a przy czterdziestu pozycjach comiesięczny przegląd zajmuje pół dnia. Dane z naszych wdrożeń pokazują, że po ograniczeniu listy o połowę koszt utrzymania spada wyraźniej niż koszt hostingu, choć to ten drugi zwykle jest przedmiotem oszczędzania.

Czego nie usuwać

Nie usuwaj wtyczki bezpieczeństwa tylko dlatego, że coś kosztuje. Zamień ją na lżejszą albo przenieś ochronę na poziom serwera, ale nie zostawiaj witryny bez zabezpieczeń.

Nie kasuj wtyczki kopii zapasowych przed ustawieniem innego mechanizmu. To jedyna rzecz, której brak zauważysz dopiero wtedy, gdy będzie potrzebna.

Nie usuwaj wtyczek zgodności prawnej: banera zgody, deklaracji dostępności, mechanizmów RODO. Wydajność nie jest argumentem wobec obowiązku.

Nie wyłączaj wtyczki, od której zależy wygląd, w piątek po południu. To brzmi jak żart, ale połowa zgłoszeń awaryjnych, które dostajemy w weekend, zaczyna się właśnie tak.

Jak nie wrócić do punktu wyjścia

Sprzątanie jest jednorazowe, przyrost wtyczek ciągły. Po roku bez zasad lista wraca do poprzedniej długości.

Trzy zasady, które to zatrzymują: każda nowa wtyczka wchodzi z odpowiedzią na pytanie, co robi i kto z niej korzysta; wtyczka jednorazowa jest usuwana od razu po wykonaniu zadania; raz na kwartał ktoś przegląda listę i wyrzuca to, czego nikt nie używa.

Prowadzimy to jako część stałej opieki nad stroną WordPress razem z aktualizacjami i kopiami zapasowymi. Jeśli chcesz zacząć od przeglądu tego, co masz, napisz przez formularz na stronie kontakt - bezpłatną wstępną analizę odsyłamy w ciągu 24 godzin.

Korzyści

  • Mierzymy, która wtyczka realnie obciąża, zamiast usuwać po nazwach
  • Wyłączanie pojedynczo, z testem koszyka i formularzy po każdej zmianie
  • Sprzątanie danych osieroconych w bazie, nie tylko usunięcie plików
  • Mniej wtyczek to także mniejsza powierzchnia ataku i mniej konfliktów przy aktualizacjach

Najczęściej zadawane pytania

Ile można zyskać na usunięciu wtyczek?
Typowo 20-40% skrócenia czasu generowania strony po usunięciu dziesięciu do piętnastu zbędnych. Zwykle większość zysku pochodzi z dwóch najcięższych, nie z całej listy.
Czy nieaktywne wtyczki spowalniają stronę?
Nie spowalniają, bo ich kod się nie uruchamia. Nadal jednak leżą na serwerze i mogą zawierać podatność, dlatego lepiej je usunąć, a nie tylko wyłączyć.
Czy usunięcie wtyczki skasuje moje treści?
Zwykle nie, ale treści dodane przez wtyczkę, na przykład własne typy wpisów albo pola dodatkowe, przestaną być widoczne. Dane zostają w bazie i wracają po ponownej instalacji, co warto sprawdzić przed panikowaniem.
Jak sprawdzić, która wtyczka najbardziej obciąża stronę?
Najprościej przez porównanie czasu odpowiedzi przed i po wyłączeniu, wykonane na kopii testowej. Dokładniejsze są narzędzia profilujące, pokazujące liczbę zapytań i czas przypadający na każdą wtyczkę przy generowaniu konkretnej podstrony.
Mam kreator stron. Czy muszę go usunąć, żeby przyspieszyć witrynę?
Nie zawsze. Zwykle wystarczy wyłączyć nieużywane moduły i przestać budować kreatorem strony, które są zwykłym tekstem. Wymiana kreatora oznacza przebudowę wszystkich podstron, więc to decyzja na etapie nowej wersji witryny, a nie optymalizacji.
Czy liczba wtyczek wpływa na bezpieczeństwo?
Bardziej niż na wydajność. Każda wtyczka to cudzy kod z własnym cyklem aktualizacji, a nieaktualna wtyczka jest najczęstszą drogą włamania na WordPressa. Przy hostingu współdzielonym za 20-30 zł miesięcznie, gdzie konta nie są od siebie odizolowane, konsekwencje bywają szersze niż jedna witryna.
Czy warto zastępować wtyczki własnym kodem?
Przy drobiazgach tak: dodanie skryptu analitycznego czy prosta zmiana wyglądu nie wymagają wtyczki z panelem ustawień. Przy funkcjach wymagających aktualizacji, jak płatności czy formularze, własny kod oznacza, że utrzymanie spada na Ciebie.
Bezpłatna wycena