Wtyczka W3 Total Cache: jak ją skonfigurować pod optymalizację

Strona na WordPressie nieuchronnie zwalnia wraz z instalowaniem wtyczek. Dlatego wtyczka cache stała się jedną z niezbędnych wtyczek WordPressa. Z ponad 1 milionem aktywnych instalacji darmowej wersji i oceną 4,4 gwiazdki wtyczka W3 Total Cache (W3TC) należy do najczęściej używanych.
Ponieważ ustawienia cache mogą psuć niektóre funkcje innych wtyczek, jeśli dopiero zaczynasz z WordPressem, możesz użyć wtyczki prostej w konfiguracji, takiej jak Cache Enabler lub WP Super cache.
Jeśli potrzebujesz szczegółowych ustawień i kontroli cache, możesz użyć wtyczki W3 Total Cache, która nawet w darmowej wersji ma rozbudowane funkcje.
Ⅰ. Instalacja W3 Total Cache i przewodnik konfiguracji
Wyszukaj W3 Total Cache, a potem zainstaluj i włącz wtyczkę.
- Welcome
- Page Cache
- Database Cache
- Object Cache
- Image Converter
- Lazy Load
- More Caching Options
AcceptDecline
Po pierwszej instalacji wejście na stronę [Dashboard] przenosi automatycznie do [Setup Guide], bo nic nie jest jeszcze skonfigurowane.
W przewodniku konfiguracji ustawisz ① cache stron, ② cache bazy danych, ③ cache obiektów, ④ cache przeglądarki, ⑤ optymalizację obrazów, ⑥ lazy load i ⑦ inne opcje cache.

Dla cache stron domyślne zalecenie W3TC to Disk: [Ulepszony]. Jak pokazuje tabela, Disk: Enhanced jest o około 10,3 ms szybszy niż Disk: Basic, czyli o około 17,8% lepszy pod względem TTFB.

Dla cache bazy danych wybierz cache na dysku.





Ustawienia z przewodnika są już widoczne w kokpicie.
Kliknij kartę [Settings] w prawym górnym rogu, by skonfigurować wszystko od [General Settings] po cache stron i więcej.

ⓐ [Ustawienia strony] w lewym menu administracyjnym oraz ⓑ karta [Settings] w prawym górnym rogu prowadzą do cache stron, Minify i innych ustawień zaawansowanych. Przechodząc do każdej strony z górnej środkowej części karty General Settings, zobaczysz wszystko o cache stron i Minify, od ustawień ogólnych po Ustawienia zaawansowane.
Ⅱ. Ustawienia cache W3 Total Cache
To karta General Settings w ustawieniach W3TC.
_branch_match_id
_bta_c
_bta_tid
_ga
_gl
_ke
adgroupid
adid
age-verified
ao_noptimize
campaignid
campid
click_id
cn-reloaded
customid
dicbo
dm_i
ef_id
epik
fb_action_ids
fb_action_types
fb_source
fbclid
gclid
gclsrc
gdffi
gdfms
gdftrk
hsa_acc
hsa_ad
hsa_cam
hsa_grp
hsa_kw
hsa_mt
hsa_net
hsa_src
hsa_tgt
hsa_ver
igshid
li_fat_id
matomo_campaign
matomo_cid
matomo_content
matomo_group
matomo_keyword
matomo_medium
matomo_placement
matomo_source
mc_cid
mc_eid
mkcid
mkevt
mkrid
mkwid
msclkid
mtm_campaign
mtm_cid
mtm_content
mtm_group
mtm_keyword
mtm_medium
mtm_placement
mtm_source
pcrid
piwik_campaign
piwik_keyword
piwik_kwd
pk_campaign
pk_cid
pk_content
pk_keyword
pk_kwd
pk_medium
pk_source
pp
redirect_log_mongo_id
redirect_mongo_id
ref
s_kwcid
sb_referer_host
si
sscid
tblci
toolid
trk_contact
trk_module
trk_msg
trk_sid
ttclid
twclid
usqp
utm_campaign
utm_content
utm_expid
utm_id
utm_medium
utm_source
utm_term
wbraid
index\.php
wp-links-opml.php
wp-locations.php
([a-z0-9_\-]+)?sitemap\.xsl
[a-z0-9_\-]+-sitemap([0-9]+)?\.xml(\.gz)?
Content-Type
X-Pingback
P3P
Link
- Enable HTTP compression in the “HTML” section on Browser Cache Settings tab.
RSPEAK_
mfunc
- Enable HTTP compression in the “Cascading Style Sheets & JavaScript” section on Browser Cache Settings tab.
- The TTL of page cache files is set via the “Expires header lifetime” field in the “Cascading Style Sheets & JavaScript” section on Browser Cache Settings tab.
wp_rg_
_wp_session_
_wc_session_
^\s*delete\b
^\s*update\b
^\s*replace\b
^\s*create\b
^\s*alter\b
^\s*show\b
^\s*set\b
\bautoload\s+=\s+’yes’
\bsql_calc_found_rows\b
\bfound_rows\(\)
DOING_CRON
DONOTCACHEDB
SHORTINIT
XMLRPC_REQUEST
plugins
[a-z0-9_\-]*sitemap[a-z0-9_\.\-]*\.(xml|xsl|html)(\.gz)?
1️⃣ Tryb podglądu
Zanim wdrożysz prawdziwe zmiany cache, możesz włączyć tryb podglądu i z góry sprawdzić błędy.

[Preview]: kliknij, by testować, podglądając zmiany, a jeśli wszystko gra, kliknij [Deploy], by zastosować je na stronie.
2️⃣ Cache stron
Przewodnik ustawił już podstawę na [Disk: Enhanced]. Możesz to później zmienić, jeśli np. po przeprowadzce serwer używa innego cache.
Jeśli pojedyncza strona (nie multisite) używa też subdomen, możesz ustawić cache także dla domen-aliasów.
|
Klasa serwera |
Interwał aktualizacji (s) |
Stron na interwał |
Opis |
|---|---|---|---|
|
Słaby serwer (1 vCPU / 1 GB lub mniej) |
1800 s (30 min) |
5 |
Unikaj skoków CPU przy budowaniu cache: daj długi interwał i ogranicz liczbę stron |
|
Średni serwer (2 vCPU / 2–4 GB) |
900 s (15 min) |
10 |
Zalecane jest zostawienie domyślnej wartości; obsłuży trochę współbieżności |
|
Wydajny serwer (4 vCPU / 8 GB lub więcej) |
300 s (5 min) |
20~30 |
Szybko przygotowuje cache; dobre dla stron z dużym ruchem |
REST API to interfejs, który WordPress udostępnia do wymiany danych ze światem zewnętrznym; pozwala przez adresy URL pobierać lub zmieniać treści w formacie JSON. Dzięki temu aplikacje mobilne, zewnętrzne aplikacje webowe, edytor bloków i inne mogą w czasie rzeczywistym synchronizować lub edytować treści WordPressa.
REST API obsługuje nie tylko administratorów, ale i żądania zwykłych użytkowników, umożliwiając wydajną wymianę danych, która czyni stronę bardziej elastyczną i rozszerzalną.
|
Opcja |
Opis |
Polecany |
|---|---|---|
|
Późna inicjalizacja |
Pozwala wywoływać funkcje WordPressa na potrzeby cache fragmentów. |
⚠️ Tylko gdy potrzebujesz zaawansowanego cache |
|
Późne cache'owanie |
Odkłada tworzenie klucza cache na po filtrach użytkownika, co daje dokładniejszą kontrolę |
⚠️ Tylko przy nadpisywaniu kluczy |
|
Tryb zgodności |
Rezygnuje z części optymalizacji dla zgodności z hostingiem (ok. 20% wolniej) |
✅ Zalecane przy błędach hostingu |
|
Zestaw znaków |
Naprawia problemy z kodowaniem UTF-8 |
✅ Zalecane, gdy pojawiają się dziwne znaki |
|
Odrzucaj żądania HEAD |
Zapobiega tworzeniu pustego cache przez żądania HEAD |
✅ Zapobiega nieoczekiwanym pustym stronom |
|
Maksymalny czas życia obiektów cache |
Jak długo trzymane są elementy cache (s) |
⏱ Wyżej przy małym ruchu, niżej przy dużym |
|
Interwał odśmiecania |
Jak często usuwane są wygasłe dane cache (s) |
⏱ Krócej, im większy ruch |
|
Czas życia ciasteczka komentarza |
Ustawia TTL ciasteczka, gdy ktoś komentuje (domyślnie 1800 s) |
✅ Przydatne do ograniczenia ruchu zalogowanych użytkowników |
3️⃣ Minify
W plikach HTML, CSS i JS Minify usuwa zbędne spacje, komentarze i znaki nowej linii, aby zmniejszyć rozmiar plików i przyspieszyć ładowanie. Ten proces nie zmienia działania tylko upraszcza kod , dzięki czemu przeglądarka szybciej go przetwarza.
|
Opcja |
Opis |
Polecany |
|---|---|---|
|
Automatyczny |
W3TC sam wykrywa i minifikuje pliki HTML, CSS i JS. |
✅ Dla większości użytkowników |
|
Ręczny |
Działa dopiero, gdy sam wpiszesz ścieżki plików do minifikacji. |
⚠️ Tylko dla zaawansowanych, którzy potrzebują precyzyjnej kontroli |
|
Opcja |
Opis |
Najlepsze środowisko |
|---|---|---|
|
Dysk (Disk) |
Zapisuje zminifikowane pliki na dysku serwera |
✅ Typowy hosting współdzielony; domyślnie |
|
APC / APCu |
Zapisuje w pamięci z użyciem cache opcode PHP |
✅ Dobrze działa na serwerach dedykowanych/wirtualnych |
|
eAccelerator |
Stary cache opcode PHP |
⚠️ Ma znaczenie tylko na starych serwerach |
|
XCache |
Jeden z mechanizmów cache PHP (rzadko używany) |
❌ Niezalecane (przestarzałe) |
|
WinCache |
Cache PHP dla serwerów Windows |
✅ Tylko serwery IIS/Windows |
|
Memcached |
Zapisywane na rozproszonych serwerach cache |
✅ Wiele serwerów, klastry |
|
Redis |
Trzyma zminifikowane pliki w szybkim magazynie klucz-wartość |
✅ Wydajne VPS / wiele serwerów |
|
Opcja |
Opis |
Cechy |
|---|---|---|
|
Minify (domyślnie) |
Wbudowany minifikator HTML W3TC |
Bardzo stabilny i zgodny z większością stron |
|
HTML Tidy |
Porządkuje strukturę HTML podczas minifikacji |
Zawiera korektę struktury → ryzyko rozbicia układu |
| Opcja | Opis | Cechy | Wybór minifikatora JS |
|---|---|---|---|
| JSMin (domyślnie) | Prosty, szybki minifikator JS: usuwa podstawowe spacje i komentarze | Bardzo stabilny, małe ryzyko konfliktów | ✅ Najpierw szybkość/stabilność; typowe strony WordPress |
| Google Closure Compiler (usługa sieciowa) | Zaawansowany optymalizator JS Google: kompresuje przez Google API | Dokładny, ale wymaga wywołania zewnętrznego serwera → może działać wolno | ⚠️ Zewnętrzne API dozwolone; najpierw precyzyjna optymalizacja |
| Google Closure Compiler (lokalna Java) | Uruchamia ten sam silnik w środowisku Java na serwerze lokalnie | Możliwa zaawansowana optymalizacja, wymagana instalacja Javy | ✅ Javę można zainstalować; gdy chcesz zaawansowanej optymalizacji |
| Narcissus | Klasyczny kompresor, który parsuje i generuje JS od nowa | Stare podejście, praktycznie bez wsparcia | — |
| YUI Compressor | Kompresor JS/CSS od Yahoo; może zachować chronione komentarze | Stary, ale wciąż stabilny | — |
| Closure (wymaga testów) | — | — | ⚠️ Dużo nowoczesnego JS (ES6+) |
| Opcja | Opis |
|---|---|
| ✅ Minify (domyślnie) | Szybki i stabilny; pasuje do większości stron WordPress |
| ⚠️ CSS Tidy | Porządkuje strukturę i poprawia składnię; style mogą się rozjechać → wymaga testów |
| ⚠️ YUI Compressor (PHP) | Stara logika kompresji, bez aktualizacji → tylko stare strony |
| ⚠️ YUI Compressor (Java) | Wymaga Javy; precyzyjna kompresja, ale bez obsługi nowoczesnej składni CSS |
Przewodnik ustawił już podstawę na [Disk: Enhanced]. Możesz to później zmienić, jeśli np. po przeprowadzce serwer używa innego cache.
|
Pozycja |
Opis |
|---|---|
|
Przepisz strukturę URL |
Używa czystej struktury URL dla linków CSS/JS. Po wyłączeniu są wyświetlane jako oparte na parametrach GET adresy URL, np. [?ver=xxx]. |
|
Dla zalogowanych użytkowników, |
Zalogowani użytkownicy widzą oryginalne pliki, a nie zminifikowane. Przydatne przy debugowaniu lub programowaniu. |
|
Ograniczaj powiadomienia o błędach |
Powiadamia, gdy przy budowaniu cache minify wystąpi błąd. Po wyłączeniu ostrzeżenie się nie pojawia. |
|
Pozycja |
Opis |
|---|---|
|
Ustawienia minify HTML |
Kompresuje dokumenty HTML, usuwając spacje, wcięcia itp., by zmniejszyć ich rozmiar. |
|
Minifikacja CSS inline |
Kompresuje kod CSS w znacznikach [<style>]. |
|
Minifikacja JS inline |
Kompresuje kod JS w znacznikach [<script>]. |
|
Nie minifikuj kanałów |
Zostawia kanały RSS/Atom (XML) bez minifikacji, dokładnie takie, jakie są. |
|
Usuń znaki nowej linii |
Usuwa znaki nowej linii w HTML → mniejszy plik |
|
Przykład |
Przeznaczenie |
|---|---|
|
google_ad_ |
Chroni komentarze skryptu reklam Google AdSense |
|
RSPEAK_ |
Chroni komentarze kodu dla czytników ekranu/dostępności |
|
mfunc |
Chroni komentarze cache fragmentów [<!– mfunc –>] W3TC |
|
Metoda minify |
Opis |
Zalecane dla |
|---|---|---|
|
Łączenie & minifikacja (Combine & Minify) |
Łączy kilka plików JS w jeden i jednocześnie je kompresuje |
✅ Najskuteczniejsze w typowych przypadkach |
|
Tylko łączenie (Combine Only) |
Łączy pliki w jeden bez kompresji |
⚠️ Gdy obawiasz się konfliktów JS: unika błędów z kompresji |
|
Tylko minifikacja (Minify Only) |
Zachowuje liczbę plików i kompresuje każdy osobno |
⚠️ Przy HTTP/2 + gdy występują błędy JS |
|
Ustawienia silnika minify |
Opis |
|---|---|
|
Miejsce wstawienia: przed [</head>] |
Wstawia JS wewnątrz [<head>] (działa przed załadowaniem strony) |
|
Miejsce wstawienia: po [<body>] |
Wstawia JS na samym dole strony (działa po wyrenderowaniu) |
|
Typ wstawienia (Blocking / Non-blocking) |
Czy wykonanie JS wstrzymuje renderowanie strony |
|
Pozycja |
Opis |
Zalecane ustawienie |
|---|---|---|
|
Włącz HTTP/2 Push |
Serwer wypycha pliki JS, zanim przeglądarka o nie poprosi |
✅ Może poprawić wydajność przy HTTP/2 |
|
Zastrzeżenia |
Jeśli Page Cache W3TC używa [Disk: Enhanced] z NGINX, HTTP/2 Push ❌ nie działa |
✅ Najlepiej działa z Apache + HTTP/2 |
|
Metoda minify |
Opis |
Zalecane dla |
|---|---|---|
|
Łączenie & minifikacja |
Łączy pliki CSS, a potem je kompresuje |
✅ Ogólne zastosowanie |
|
Tylko łączenie |
Łączy pliki bez kompresji |
⚠️ Gdy obawiasz się konfliktów CSS |
|
Tylko minifikacja |
Tylko kompresja, bez łączenia |
✅ Pasuje do serwerów HTTP/2 |
|
Ustawienia silnika minify |
Opis |
Działa, gdy |
|---|---|---|
|
Usuń chronione komentarze(Preserved comment removal) |
Usuwa informacje o licencji i chronione komentarze z plików CSS, by zmniejszyć ich rozmiar. |
⚠️ Działa tylko przy [Combine & Minify] lub [Minify only] (※ nie przy [Combine only]) |
|
Usuń znaki nowej linii(Line break removal) |
Usuwa znaki nowej linii z CSS, dając bardziej zwarty plik (nieco mniejszy) |
⚠️ Działa tylko przy [Combine & Minify] lub [Minify only] (※ ignorowane przy [Combine only]) |
|
Obsługa @import |
Opis |
Zalecane ustawienie |
|---|---|---|
|
None |
Zostawia wywołania CSS [@import] bez zmian |
❌ Niezalecane (blokuje renderowanie) |
|
Bubble |
Przenosi [@import] na początek pliku CSS |
⚠️ Ograniczony efekt |
|
Process |
Włącza wywołania [@import] do łączenia |
✅ Zalecane (poprawia wydajność) |
|
Opcja zaawansowana |
Opis |
Zalecane ustawienie |
|---|---|---|
|
Interwał aktualizacji plików zewnętrznych(Update interval for external files) |
Jak często W3TC ponownie pobiera/minifikuje pliki CSS/JS z CDN i zewnętrznych adresów (w sekundach) |
✅ Zostaw domyślne [86400] s (24 godziny) ※ jeśli pliki zewnętrzne często się zmieniają, rozważ [21600] (6 godzin) |
|
Interwał odśmiecania(Garbage collection interval) |
Jak często usuwane są wygasłe pliki cache (dotyczy cache na dysku) |
✅ Zalecane [43200–86400] s (przy dużym ruchu można mniej) ※ górny limit (2592000 s) ustawisz w [wp-config.php] |
|
Nigdy nie minifikuj poniższych stron(Never minify the following pages) |
Wpisz adresy URL, które zawsze mają być wyłączone z minifikacji (ścieżki względne, bez zapytań) |
✅ W razie potrzeby dodaj panel admina, stronę logowania, adresy AJAX itp. Przykład: [wp-login.php], [wp-admin/], [my-custom-endpoint/] |
|
Pliki JS, których nigdy nie minifikować |
Wskaż pliki JS, które po minifikacji powodują błędy |
⚠️ Dodawaj problematyczne pliki JS, gdy je znajdziesz. Przykład: [plugins/some-script.js] |
|
Pliki CSS, których nigdy nie minifikować |
Pozwala robić wyjątki przy konfliktach CSS |
⚠️ Zrób wyjątek dla CSS, który psuje układ. Przykład: [themes/mytheme/style.css] |
|
Odrzucone user agenty |
Nie podaje zminifikowanych plików wybranym user agentom (crawlery, boty itp.) |
✅ Wskaż tylko boty, które muszą omijać cache. Przykład: [Lighthouse], [GTmetrix], [Chrome-Lighthouse] itp. |
|
Dołącz pliki/biblioteki zewnętrzne(Include external files/libraries) |
Ręcznie dodaje zewnętrzne skrypty z CDN do listy łączenia |
⚠️ Tylko gdy chcesz minifikować/łączyć zewnętrzne pliki JS/CDN. Przykład: [ajax.googleapis.com/…/jquery.min.js] |
|
Zezwól na wyrażenia regularne |
Pozwala dopasować regexem, gdy wzorce nazw plików się zmieniają |
✅ Przydatne, gdy zewnętrzne skrypty często zmieniają numer wersji. Przykład: [cdn.example.com/js/lib-\d+\.js] |
# EX:
#Pliki JS, których nigdy nie minifikować:
plugins/some-plugin/assets/js/legacy-script.js
wp-includes/js/jquery/jquery.js
#CSS, którego nigdy nie minifikować:
themes/mytheme/style.css# EX:
#Odrzucone user agenty:
Lighthouse
Chrome-Lighthouse
GTmetrix|
Pozycja |
Opis |
Zalecane ustawienie |
|---|---|---|
|
Użyj zdarzenia WP-Cron(Enable WP-Cron event) |
Aby automatycznie czyścić/odświeżać cache stron według harmonogramu, zaplanuj zadanie WP-Cron |
✅ Zalecane włączenie (zostaw domyślne) |
|
Godzina startu(Start time) |
Kiedy WP-Cron uruchomi się pierwszy raz (np. 12:00 am) |
✅ Pora małego obciążenia (np. między północą a 3:00) |
|
Interwał(Interval) |
Jak często WP-Cron czyści cache Ustawienia |
✅ Dwa razy dziennie lub co godzinę (strony z dużym ruchem) |
|
Alternatywa: cron systemowy |
Zamiast WP-Cron możesz uruchamiać polecenie [wp w3tc flush_posts] z prawdziwego crona systemowego |
Zalecane na wydajnych serwerach (dokładniejsze i wydajniejsze niż WP-Cron) |
4️⃣ Cache opcode
Dla cache opcode automatycznie stosowany jest ten zainstalowany na serwerze; jeśli go nie ma, opcja jest wyłączona.
5️⃣ Cache bazy danych i obiektów: Memcached·Redis
|
Opcja |
Opis |
Zalecane środowisko |
|---|---|---|
|
Dysk |
Zapisuje dane cache na dysku serwera |
✅ Hosting współdzielony / podstawowe konfiguracje |
|
Memcached |
Rozproszony cache sieciowy; szybki |
✅ Wiele serwerów / klaster |
Typowe strony WordPress często używają do cache bazy danych tylko jednego z Memcached lub Redis, ale w W3 Total Cache możesz je rozdzielić: ⓐ jeden na cache bazy danych, ⓑ drugi na cache obiektów.
📌 Typowa WordPress Witryna
├─ Baza danych Cache
│ └─ Memcached lub Redis · tylko jeden (użycie)
└─ Obiektów Cache
└─ ten sam Cache silnik współdzielony jest często
📌 W3 Total Cache (W3TC)
├─ Baza danych Cache
│ └─ Memcached (użycie) (przykład)
└─ Obiektów Cache
└─ Redis (użycie) (przykład)
🛠️ Strategia stosowana
└─ Cache silnik według roli — Oddzielone Włączone możliwe
├─ Serwer zasoby rozłożone
├─ Cache wąskie gardło zmniejszone
└─ Wydajność Optymalizacja elastyczność zapewnionaW ustawieniach W3 Total Cache domyślnie cache bazy danych używa Memcached, a cache obiektów Redis.
|
Pozycja |
Opis |
Zalecenie lub uwaga |
|---|---|---|
|
Maksymalny czas życia obiektów cache |
Naturalny czas wygaśnięcia niezmienionych elementów cache (s) |
[180 s] (domyślnie); za dużo marnuje pamięć |
|
Interwał odśmiecania |
Jak często usuwane są wygasłe dane cache (s) |
[3600 s] (1 godzina); zmniejsz przy dużym użyciu |
|
Nigdy nie cache'uj |
Ścieżki wyłączone z cache (regex dozwolony) |
Zaleca się wyłączenie stron dynamicznych, takich jak logowanie, koszyk i wyszukiwanie |
|
Ignorowane rdzenie zapytań |
Zapytania z pasującym prefiksem nie są cache'owane |
Dane sesji/tymczasowe, np. [gdsr_], [wp_rg_] |
|
Odrzucanie zapytań (Query Rejects) |
Wyklucza zapytania z określonymi słowami/wzorcami (regex) |
[insert], [update], [autoload], [found_rows()] itp. |
|
Reject Constants |
Wyłącza cache bazy, gdy zdefiniowane są wskazane stałe WP |
[DOING_CRON], [XMLRPC_REQUEST] itp. |
|
Włącz dla WP-CLI |
Czy używać cache także podczas działania WP-CLI |
✅ Szybciej po włączeniu (uwaga w środowiskach testowych) |
|
Opcja |
Opis |
Zalecane środowisko |
|---|---|---|
|
Dysk |
Zapisuje dane cache na dysku serwera |
✅ Hosting współdzielony / podstawowe konfiguracje |
|
Redis |
Szybki cache klucz-wartość; dobrze działa z PHP-FPM |
✅ Wydajne serwery / VPS |

|
Pozycja |
Opis |
|---|---|
|
Host/IP Redis |
Format [127.0.0.1:6379]. Dla TLS użyj prefiksu [tls://] |
|
Weryfikuj certyfikat TLS |
Sprawdza ważność certyfikatu przy TLS (opcjonalnie) |
|
Używaj trwałych połączeń |
Ponownie używa połączeń Redis dla lepszej wydajności |
|
Limit czasu połączenia |
Maksymalny czas na połączenie z Redis (s) |
|
Interwał ponawiania połączenia |
Czas oczekiwania przed ponowieniem po błędzie (ms) |
|
Limit czasu odczytu połączenia |
Maksymalny czas oczekiwania na odpowiedź (s) |
|
Redis DB ID |
Numer bazy danych w Redis (domyślnie [0]) |
|
Hasło Redis |
Pole hasła lub uwierzytelniania SASL |
|
Domyślny czas życia cache |
Domyślny czas trzymania elementów cache (s). Domyślnie 180 s |
|
Interwał odśmiecania |
Jak często usuwany jest wygasły cache. Domyślnie 600 s |
|
Grupy globalne |
Grupy współdzielone w trybie sieci (dla multisite) |
|
Grupy nietrwałe |
Grupy wyłączone z cache, np. [counts], [plugins] |
|
Cache'uj żądania wp-admin |
Stosuje cache także w panelu administracyjnym (⚠️ najpierw przetestuj) |
|
Przechowuj transienty w bazie danych |
Trzyma wartości tymczasowe w bazie nawet przy zewnętrznym cache |
|
Włącz WP-CLI |
Pozwala na cache także dla poleceń WP-CLI |
6️⃣ Cache przeglądarki
Cache przeglądarki zapisuje pliki statyczne, takie jak obrazy, CSS i JS na urządzeniu odwiedzającego lokalnie, co znacznie skraca czas ładowania przy kolejnych wizytach. Poprawia to szybkość odpowiedzi strony i doświadczenie użytkownika.
Większość tych ustawień skupia się na kontroli cache i zmniejszaniu obciążenia serwera. Na stronach z dużym ruchem lub tam, gdzie liczy się optymalizacja zasobów statycznych, możesz spokojnie włączyć wiele z nich.
| Pozycja | Ogólne | CSS i JS | HTML i XML | Media i inne pliki |
|---|---|---|---|---|
| Ustaw nagłówek [Last-Modified] | Dołącza datę ostatniej modyfikacji pliku, by umożliwić odpowiedzi 304 | ✅ W większości przypadków włącz | ✅ Pasuje do większości serwerów | ✅ Działa z większością cache CDN/przeglądarki |
| Ustaw nagłówek [Expires] | Sprawia, że przeglądarka trzyma pliki w cache przez określony czas | ✅ Domyślnie 31536000 s (1 rok), zalecane | ✅ Domyślnie [3600 s (1 godzina)] | ✅ Domyślnie [31536000 s] (1 rok) → dobre dla plików statycznych |
| ⏱️ Ustaw czas Expires | — | ⏱️ np. [31536000 s = 1 rok] · przy CDN można skrócić | — | — |
| Ustaw nagłówek [Cache-Control] | Steruje strategią cache, dodając nagłówki pragma i cache-control | ✅ Zalecane [“public, max-age=31536000”] | ✅ Ustaw np. [“public, max-age=3600”] | ✅ Zalecane [“public, max-age=31536000”] |
| ✅ Zasady kontroli cache | — | ✅ Użyj zasady z [max-age] · domyślnie [“public, max-age=EXPIRES_SECONDS”] | — | — |
| Ustaw [ETag] | Dostarcza znacznik encji identyfikujący plik – do wykrywania zmian | ✅ Skuteczne w obrębie jednego serwera | ✅ Jeśli cache nie jest współdzielony między serwerami, zalecane jest użycie | ✅ Przydatne przy jednym serwerze |
| Ustaw nagłówek W3TC | Dodaje nagłówek pokazujący, czy plik zoptymalizował W3TC | 🔖 Nieobowiązkowe; do analizy | 🔖 Nieobowiązkowe (do debugowania) | 🔖 Opcjonalne |
| Kompresja gzip | Kompresja zmniejszająca pliki tekstowe (szeroko zgodna) | ✅ Obsługiwane na większości serwerów | ✅ Obsługiwane przez większość serwerów | ✅ Bez wpływu na obrazy |
| Kompresja brotli | Wyższy stopień kompresji niż gzip (tylko obsługiwane przeglądarki) | ✅ Wymaga konfiguracji Apache/Nginx | ✅ Włącz moduł Apache/nginx | ✅ Działa tylko w obsługiwanych przeglądarkach |
| Zapobiegaj cache obiektów po zmianie ustawień | Dodaje ciąg zapytania, by unieważnić stary cache | ✅ Zalecane, gdy ustawienia często się zmieniają | — | ✅ Zmiany plików działają od razu |
| Usuń ciągi zapytań | Usuwa [?] z zasobów statycznych, by lepiej je cache'ować | ⚠️ Potrzebne tylko przy niektórych CDN/proxy | — | ✅ Można stosować do plików z wersjonowaniem |
| Usuń ciasteczka | Usuwa nagłówek [Set-Cookie] z odpowiedzi dla zasobów statycznych | ✅ W większości przypadków zaznacz | — | ✅ Obrazy itp. nie potrzebują ciasteczek |
| Nie pozwalaj WordPressowi obsługiwać 404 | Serwer WWW obsługuje 404 dla plików statycznych → mniejsze obciążenie WP | — | — | — |
| Lista URI wyjątków 404 | Wskazuje wzorce URI, które WP ma nadal obsługiwać (np. sitemap, robots.txt) | — | — | — |
| Przepisz strukturę URL obiektów | Generuje unikalne URI, by ominąć cache (np. [ver=xxxx]) | — | — | — |
Ⅲ. Dodatkowe funkcje W3 Total Cache
Czyszczenie cache przez WP Cron to ustawienie globalne.
{wp_content_dir}/gallery/*
{wp_content_dir}/uploads/avatars/*
{plugins_dir}/wordpress-seo/css/xml-sitemap.xsl
{plugins_dir}/wp-minify/min*
{plugins_dir}/*.js
{plugins_dir}/*.css
{plugins_dir}/*.gif
{plugins_dir}/*.jpg
{plugins_dir}/*.png
{uploads_dir}/imagerotator.swf
{plugins_dir}/wp-fb-autoconnect/facebook-platform/channel.html
- You can use placeholders {wp_content_dir}, {plugins_dir}, {uploads_dir} instead of writing folder paths (wp-content, wp-content/plugins, wp-content/uploads).
- If using Amazon Web Services or Self-Hosted CDN types, enable HTTP compression in the “Media & Other Files” section on Browser Cache Settings tab.
data-bgposition=
data-envira-src=
data-large_image=
data-lazy-original=
data-lazy-src=
data-lazyload=
data-lazysrc=
data-no-lazy=
data-src=
data-srcset=
fullurl=
lazy-slider-img=
loading=”eager”
no-lazy
rev-slidebg
skip-lazy
soliloquy-image
swatch-img
w3-total-cache
woocommerce/assets/images/placeholder.png
wpcf7_captcha
1️⃣ CDN
Skonfigurujesz to po rejestracji u dostawcy CDN.
|
Opcja |
Opis |
|---|---|
|
✅ Hostuj załączniki |
Wysyła załączniki, np. obrazy z [wp-content/uploads], do CDN |
|
✅ Hostuj pliki wp-includes |
Dołącza do CDN statyczne pliki rdzenia WordPressa (js/css itp.) |
|
✅ Hostuj pliki motywu |
Dołącza do CDN statyczne pliki aktywnego motywu (css/js/obrazy itp.) |
|
✅ Hostuj zminifikowane pliki CSS/JS |
Podaje z CDN pliki CSS/JS zminifikowane przez W3TC |
|
✅ Hostuj własne pliki |
Wysyła do CDN wskazane ścieżki lub nazwy plików |
|
⚠️ Wymuś nadpisanie istniejących plików |
Do wymuszenia ponownego wysłania, gdy zmiany nie są wykrywane automatycznie |
|
Pozycja |
Opis |
|---|---|
|
Czyść CDN tylko ręcznie |
Usuwa pliki z CDN tylko po kliknięciu przycisku ręcznego czyszczenia |
|
Wyłącz CDN na stronach SSL |
Nie używa adresów CDN na stronach HTTPS |
|
Używaj linków CDN w panelu |
Pokazuje adresy CDN mediów także w ekranach panelu |
|
Add CORS header |
Dodaje nagłówek odpowiedzi zezwalający na CORS |
|
Wyłącz CDN według roli |
Nie stosuje CDN dla wybranych ról (np. tylko administratorzy korzystają z originu) |
|
Lista wykluczonych stron |
Wyklucza z CDN wskazane ścieżki (regex dozwolony) |
|
Automatycznie wysyłaj zminifikowane pliki |
Automatycznie wysyła zminifikowane pliki do CDN (Push) |
|
Automatycznie eksportuj zmienione pliki |
Automatycznie wysyła po wykryciu zmian w plikach |
|
Interwał automatycznego wysyłania |
Interwał wysyłania po wykryciu zmian (domyślnie 3600 s) |
|
Interwał / limit ponownego przesyłania |
Interwał ponawiania po błędach i limit przetwarzanych plików |
|
Pliki wp-includes do wysłania |
Określa, które typy plików rdzenia trafiają do CDN |
|
Typy plików motywu do wysłania |
Określa typy plików motywu, np. CSS/JS/czcionki |
|
Typy plików do importu |
Ustala warunki automatycznego pobierania plików z zewnętrznych linków |
|
Lista własnych plików |
Wskazuje pojedyncze ścieżki plików do wysłania do CDN (szablony, zewnętrzne wtyczki itp.) |
|
Odrzucone user agenty |
Wskazuje boty/user agenty blokowane dla plików CDN |
|
Odrzucone ścieżki plików |
Wskazuje ścieżki plików trzymane poza CDN, np. CAPTCHA i ścieżki specjalne |
|
Ustaw domenę ciasteczek |
Wskazuje domenę, by nie wysyłać ciasteczek przy CDN na subdomenie |
2️⃣ Odwrotne proxy
Opis podaje jako przykład Varnish i Nginx, ale ponieważ Nginx konfiguruje się na serwerze, stosuj to we wtyczce W3 Total Cache tylko wtedy, gdy używasz Varnisha.
3️⃣ Doświadczenie użytkownika: lazy load
W ustawieniach zaawansowanych ponad 50% funkcji jest dostępnych tylko w wersji premium.
|
Pozycja |
Opis |
Kiedy używać |
|---|---|---|
|
✅ Przetwarzaj znaczniki obrazów HTML |
[<img>]: znaczniki dostają atrybut lazy |
Do leniwego ładowania zwykłych obrazów w treści |
|
✅ Przetwarzaj obrazy tła |
Stosuje leniwe ładowanie do CSS [background-image] |
Dla stron z bogatym designem i wieloma obrazami tła |
| Wykluczone słowa | Przykład |
|---|---|
| Atrybuty wyłączone z lazy | [data-src], [data-lazy-src], [data-no-lazy], [loading=”eager”] itp. |
| Klasy wyłączone z lazy | [no-lazy], [skip-lazy], [lazy-slider-img], [rev-slidebg] itp. |
| Wtyczki/slidery | [soliloquy-image], [envira], [w3-total-cache], [wpcf7_captcha] itp. |
| WooCommerce | [swatch-img], [woocommerce/…/placeholder.png] itp. |
„Próg” leniwego ładowania określa, jak daleko poniżej obszaru widoku (ekranu) przeglądarki obrazy i elementy tła zaczynają ładować się z wyprzedzeniem. Przy 100px element ładuje się, gdy użytkownik przewinie na 100 pikseli od niego; zbyt mała wartość opóźnia ładowanie obrazów i użytkownik może widzieć puste miejsca, więc zwykle odpowiednie jest 100–300px.
Dalej są sposoby osadzania skryptów.
|
Sposób osadzenia |
Opis |
Miejsce lub atrybut |
|---|---|---|
|
Asynchronicznie (Async) |
Działa równolegle z ładowaniem strony i nie blokuje renderowania |
[<script async>] |
|
Synchronicznie (w head) |
Działa jako pierwszy w obszarze [<head>] i może chwilowo blokować renderowanie (in the head) |
[<head>] lub [<script>] |
|
Inline |
Wstawia skrypt bezpośrednio do dokumentu HTML, więc działa bez osobnego żądania |
Wstawiany wewnątrz [<script>kod</script>] |


4️⃣ Konwerter WebP


Ⅳ. Ogólna ocena W3 Total Cache
Interfejs (UI) W3 Total Cache nie jest zły, ale wyraźnie niewygodny. Wielu programistów i profesjonalnych użytkowników mówi to samo. W porównaniu z nowoczesnymi wtyczkami, takimi jak WP Rocket czy FlyingPress, nadąża pod względem wydajności strony, ale doświadczenie użytkownika (UX) wypada słabiej.
Mnogość funkcji to zaleta, ale dla początkujących struktura może wydawać się zbyt złożona. Zwłaszcza przez częste przechodzenie między menu i wiele szczegółowych opcji nawet doświadczeni programiści i administratorzy mogą popełnić błędy w konfiguracji. Oczywiście nie zapamiętasz każdego ustawienia, ale w użyciu to zaawansowana wtyczka cache pozwalająca na precyzyjne strojenie.
Przy ponad 1 milionie instalacji darmowej wersji trudno uznać ją po prostu za starą wtyczkę — w praktyce niewiele wtyczek cache dorównuje jej zakresowi i bogactwu funkcji.
| Pozycja | Ocena (⭐) | Opinia |
|---|---|---|
| 🎛️ Interfejs | ⭐⭐⭐ | Dużo menu i złożona struktura; bariera dla nowych użytkowników. UI wygląda staro |
| ⚙️ Zakres funkcji | ⭐⭐⭐⭐⭐ | Cache, CDN, Redis i prawie każda inna funkcja; trudno znaleźć czegoś brak |
| 🛠️ Elastyczność strojenia | ⭐⭐⭐⭐ | Prawie wszystko da się dostroić; uważaj na konflikty ustawień |
| 🚀 Zysk wydajności | ⭐⭐⭐⭐⭐ | Świetna wydajność po optymalizacji; cache obiektów/przeglądarki robi dużą różnicę |
| 🧩 Zgodność | ⭐⭐⭐ | Może kolidować z niektórymi hostingami, motywami i wtyczkami. |
| 📄 Dokumentacja i poradniki | ⭐⭐⭐⭐⭐ | Obszerna oficjalna dokumentacja |
| 💡 Rekomendacja dla użytkowników | ⭐⭐⭐⭐(4.5) | Polecane zaawansowanym; początkujący mogą woleć WP Rocket, Cache Enabler itp. |
| 📊 Ocena ogólna | ⭐⭐⭐⭐(4.5) | Mocna wtyczka nastawiona na funkcje. Wymaga nauki; weź pod uwagę swój poziom |
Ⅴ. Test wydajności
Po skonfigurowaniu wtyczki końcowy test szybkości pokazał wyraźniejszy wzrost niż przy typowych wtyczkach cache.
ℹ️ Informacja o linkach partnerskich
Treści tej witryny zawierają linki partnerskie. Jeśli odwiedzający kupi produkt lub usługę przez taki link, witryna otrzymuje od sprzedawcy prowizję. Kwota płacona przy tym przez kupującego (podczas promocji spada↓) nie wzrasta. Podane ceny, rabaty i dostępność odnoszą się do chwili pisania i mogą różnić się od stanu faktycznego, dlatego przed zakupem sprawdź je u sprzedawcy. Produkty wybieramy i oceniamy według własnych kryteriów, a prowizja nie wpływa ani na kolejność prezentacji, ani na treść ocen.