Jednym z najczęstszych pytań, jakie otrzymujemy, jest „Mam zainstalowaną wtyczkę X, ale raport jej nie wymienia.“ To prawie zawsze oczekiwane zachowanie, a nie błąd. InspectWP wykonuje jedną anonimową wizytę na Twojej stronie, jak każdy odwiedzający, i pracuje tylko z tym, co jest publicznie widoczne. Ten artykuł wyjaśnia, co to oznacza w praktyce.
1. Jak działa wykrywanie w zasadzie
InspectWP ładuje podany URL dokładnie raz, prawdziwą przeglądarką headless. Następnie analizujemy:
- Wyrenderowany HTML i inline skrypty.
- Wszystkie pliki CSS i JavaScript ładowane przez stronę.
- URL-e obrazów i fontów, zwłaszcza ich ścieżki.
- Nagłówki odpowiedzi HTTP i pliki cookie.
- Meta tagi i dane strukturalne.
Na podstawie tych sygnałów wnioskujemy, jaka wtyczka lub motyw jest w użyciu. Nie logujemy się do Twojej strony, nie uzyskujemy dostępu do wp-admin i nie czytamy bezpośrednio Twojego katalogu wp-content. Widzimy tylko to, co zobaczyłby każdy anonimowy odwiedzający.
2. Dlaczego wtyczka może być niewidoczna
Istnieje kilka uzasadnionych powodów, dla których wtyczka się nie pojawia:
- To wtyczka tylko backendowa. Wiele wtyczek (narzędzia administracyjne, backupy, staging, wewnętrzne SEO, zarządzanie rolami) nigdy nic nie wypisuje do frontendu. Nie ma czego wykrywać.
- Ładuje się tylko na określonych stronach. Wtyczka rezerwacji może ładować zasoby tylko na stronie rezerwacji. Jeśli crawlujesz stronę główną, się nie pojawi. Spróbuj zcrawlować stronę, na której wtyczka jest faktycznie używana.
- Ładuje się tylko dla zalogowanych użytkowników. Wtyczka strefy członkowskiej może nic nie ładować anonimowym odwiedzającym. Ten sam efekt co wyżej.
- Agresywna optymalizacja ją ukrywa. Wtyczki cachowania i optymalizacji potrafią łączyć, minifikować lub przemianować zasoby do tego stopnia, że oryginalna nazwa wtyczki nie jest już rozpoznawalna. Zobacz sekcję 4.
- To bardzo nowa lub bardzo niszowa wtyczka. Wykrywanie działa najlepiej dla wtyczek pozostawiających rozpoznawalny, stabilny ślad. Nowe wydania lub ręcznie pisane wtyczki mogą jeszcze nie znajdować się w naszych regułach rozpoznawania.
- Wtyczka została dezaktywowana. Dezaktywowana wtyczka nic nie ładuje na frontendzie. Warto sprawdzić w Wtyczki → Zainstalowane wtyczki.
3. Dlaczego motyw może być źle zidentyfikowany
Wykrywanie motywu jest zwykle dość niezawodne, ponieważ motywy zazwyczaj pozostawiają wyraźne ślady w ścieżkach zasobów (/wp-content/themes/twoj-motyw/...). Może mimo to pójść nie tak:
- Motywy potomne: Jeśli używasz motywu potomnego, możesz zobaczyć zarówno motyw nadrzędny, jak i potomny. To poprawne: WordPress ładuje oba.
- Przemianowane motywy: Niektóre agencje zmieniają nazwę folderu motywu nadrzędnego ze względów brandingowych. Jeśli nowa nazwa folderu nie pasuje do niczego w naszych regułach, motyw pojawia się jako „nieznany“ lub z przemianowanym slugiem.
- Kreatory stron z własnym motywem: Niektóre kreatory stron de facto zastępują motyw. Wykryty motyw to wtedy podstawowy motyw kreatora, a nie ten, którego mógłbyś się spodziewać.
- Multisite z nadpisaniami motywów: Na multisite aktywny motyw może różnić się dla każdej podstrony. Upewnij się, że crawlujesz właściwy URL.
4. Pułapka optymalizacji zasobów
To pojedynczy najczęstszy powód brakujących wtyczek na poza tym normalnych stronach. Wtyczki takie jak WP Rocket, LiteSpeed Cache, Autoptimize, W3 Total Cache, Perfmatters czy wbudowane optymalizatory CDN potrafią wszystkie poniższe:
- Łączyć wiele plików CSS w jeden duży plik o generycznej nazwie typu
combined-abc123.css. - Łączyć wiele plików JavaScript w ten sam sposób.
- Minifikować i obfuskować zawartość plików.
- Przepisywać ścieżki zasobów na CDN, usuwając prefiks
/wp-content/plugins/.... - Inlinerować krytyczny CSS, tak że oryginalny arkusz stylów nie jest już żądany.
Gdy to wszystko działa naraz, indywidualne sygnatury wtyczek znikają. Wtyczka nadal działa idealnie na Twojej stronie — po prostu nie widzimy jej z zewnątrz.
5. CDN, reverse proxy i edge cache
Jeśli Twoja strona jest za Cloudflare, BunnyCDN, KeyCDN lub edge cache zarządzanego hostingu, odpowiedź, którą widzimy, może być już mocno przekształcona. Niektóre funkcje CDN (Rocket Loader, automatyczna minifikacja, Mirage, Polish) dodatkowo zmieniają HTML i zasoby. Wtyczki nadal tam są — tylko ich publiczny odcisk się zmienił.
6. Rendering po stronie serwera i aplikacje JavaScript
Strony budowane z headless WordPress (frontend JavaScript komunikujący się z WordPress przez REST lub GraphQL) zwykle ujawniają niemal żadnych tradycyjnych sygnałów WordPress. Frontend jest w zasadzie aplikacją custom. W takich przypadkach wykrywanie samego WordPress, a tym bardziej poszczególnych wtyczek, jest z zewnątrz ograniczone lub niemożliwe.
7. Co robić, gdy czegoś brakuje
- Zcrawluj stronę, na której wtyczka jest faktycznie używana, a nie tylko stronę główną.
- Crawluj jako wylogowany odwiedzający, w prywatnej karcie, aby zobaczyć ten sam widok, który widzi InspectWP.
- Tymczasowo wyłącz łączenie plików we wtyczce cache i zcrawluj ponownie.
- Sprawdź, czy wtyczka faktycznie wypisuje coś na frontendzie (Pokaż źródło w przeglądarce).
- Jeśli jesteś pewien, że wtyczka generuje wyjście na frontendzie i nadal jej brakuje, napisz do nas na hello@inspectwp.com z URL raportu i nazwą wtyczki. Stale rozszerzamy nasze reguły rozpoznawania.