Skip to content

Jak wykorzystywać tagi canonical przy filtrowaniu, sortowaniu i paginacji w SEO

Strona kategorii w sklepie potrafi wygenerować setki wersji URL, zanim ktokolwiek zacznie optymalizować treść. Filtr po rozmiarze, kolorze, marce, cenie, dostępności, sortowanie po popularności, liczba produktów na stronie, widok listy albo siatki — dla użytkownika to wygodna nawigacja. Dla Google to często plątanina adresów, które wyglądają podobnie, ale nie zawsze oznaczają to samo.

Tag canonical pomaga uporządkować te sygnały, ale nie rozwiązuje wszystkiego. Nie jest blokadą crawlowania, nie zastępuje architektury informacji i nie naprawia błędnego linkowania wewnętrznego. Dobrze wdrożony wskazuje, który adres ma być traktowany jako główny. Źle wdrożony potrafi odciąć od wyników strony, które powinny zbierać ruch: wartościowe filtry, listingi marek, podkategorie albo dalsze strony paginacji z produktami, do których robot inaczej dociera z trudem.

Najważniejsza decyzja nie brzmi więc: „gdzie wkleić canonical?”. Pytanie jest prostsze i trudniejsze zarazem: który URL ma wartość wyszukiwania, a który jest tylko technicznym wariantem tej samej strony?

Canonical przy filtrowaniu: kiedy indeksować, a kiedy konsolidować adresy URL

Filtrowanie jest najtrudniejsze, bo ten sam mechanizm może tworzyć zarówno dobre strony SEO, jak i śmieciowe kombinacje parametrów.

Przykład:

/buty-damskie/ to główna kategoria.

/buty-damskie?kolor=czarne może odpowiadać na realne zapytanie „czarne buty damskie”.

/buty-damskie?kolor=czarne&rozmiar=39&sort=price_desc&view=grid to już najczęściej wariant użytkowy, a nie osobna strona pod SEO.

W pierwszym przypadku self-canonical może mieć sens, ale tylko wtedy, gdy strona ma stabilny adres, własny tytuł, nagłówek, opis, sensowną liczbę produktów i realny potencjał wyszukiwania. W drugim przypadku canonical powinien zwykle wskazywać najbliższą wartościową wersję, czyli kategorię główną albo indeksowalny filtr nadrzędny.

Najprostsza zasada decyzyjna:

  • indeksuj filtr, jeśli odpowiada na popularne zapytanie, ma stabilny asortyment i da się go sensownie opisać;
  • konsoliduj canonicalem filtr, który tylko technicznie zawęża listę produktów;
  • nie indeksuj kombinacji filtrów na ślepo, bo bardzo szybko powstają tysiące cienkich, podobnych adresów;
  • nie ustawiaj automatycznie canonicala do kategorii głównej dla wszystkich filtrów, bo część z nich może mieć wartość SEO.

Największy błąd w sklepach to jeden globalny schemat: „każdy URL z parametrem dostaje canonical do czystej kategorii”. To wygodne dla dewelopera, ale często szkodliwe dla ruchu. W ten sposób można wyciąć z widoczności strony typu „sukienki lniane”, „czarne sneakersy damskie”, „meble dębowe” albo „laptopy 17 cali”, mimo że użytkownicy faktycznie wpisują takie zapytania.

Drugi błąd to indeksowanie wszystkiego. Filtry po cenie, rozmiarze, dostępności, liczbie produktów na stronie albo sposobie wyświetlania zwykle nie zasługują na własny indeksowalny adres. Ich rola jest użytkowa. Nie muszą konkurować w Google.

W praktyce warto przygotować prostą tabelę decyzji dla typów filtrów:

Typ filtra Rekomendacja SEO Canonical
Marka często indeksować self-canonical, jeśli strona ma wartość
Kolor zależnie od branży self-canonical albo do kategorii
Materiał często indeksować w modzie, meblach, wyposażeniu wnętrz self-canonical, jeśli istnieje popyt
Rozmiar zwykle nie indeksować samodzielnie do kategorii lub filtra nadrzędnego
Cena zwykle nie indeksować do kategorii
Dostępność nie indeksować do kategorii
Sortowanie nie indeksować do wersji domyślnej
Widok listy/siatki nie indeksować do wersji domyślnej
Liczba produktów na stronie nie indeksować do wersji domyślnej

Priorytet jest jasny: najpierw rozdziel filtry na SEO landing pages i filtry czysto użytkowe. Dopiero potem wdrażaj canonicale. Odwrotna kolejność kończy się tym, że techniczny schemat decyduje o strategii widoczności.

Sortowanie i parametry URL: jak nie marnować crawl budgetu na duplikaty

Sortowanie prawie nigdy nie tworzy nowej wartości dla wyszukiwarki. Strona /kurtki-zimowe?sort=price_asc pokazuje zwykle te same produkty co /kurtki-zimowe?sort=popular, tylko w innej kolejności. Dla użytkownika to przydatne. Dla Google — najczęściej duplikat lub bardzo bliska kopia.

Dlatego przy sortowaniu najbezpieczniejszy schemat wygląda tak:

<link rel="canonical" href="https://twojsklep.pl/kurtki-zimowe/" />

na adresach takich jak:

/kurtki-zimowe?sort=price_asc
/kurtki-zimowe?sort=price_desc
/kurtki-zimowe?sort=popular
/kurtki-zimowe?view=grid
/kurtki-zimowe?limit=48

Nie chodzi o to, żeby Google „nie widział” tych stron. Chodzi o to, żeby zrozumiał, że wersją kanoniczną jest domyślny listing, a warianty sortowania są tylko sposobem prezentacji tej samej zawartości.

Tu trzeba uważać na trzy rzeczy.

Po pierwsze, canonical powinien wskazywać adres, który faktycznie zwraca kod 200, nie jest zablokowany w robots.txt, nie ma noindex i nie przekierowuje przez kilka etapów. Canonical do strony, której robot nie może poprawnie sprawdzić, jest słabym sygnałem.

Po drugie, nie wolno mieszać sygnałów. Jeżeli w HTML ustawiasz canonical na /kurtki-zimowe/, w mapie XML podajesz /kurtki-zimowe?sort=popular, a linkowanie wewnętrzne prowadzi głównie do wersji z parametrem, wyszukiwarka dostaje sprzeczny zestaw wskazówek. Wtedy Google może wybrać inny canonical niż ten zadeklarowany przez użytkownika.

Po trzecie, canonical nie zastępuje porządnej architektury linkowania. Jeśli menu, breadcrumbs, boksy kategorii i linki z treści prowadzą do adresów z parametrami, a czysta kategoria jest słabo podlinkowana, sam tag nie naprawi problemu. Najpierw popraw linki. Tag jest sygnałem, nie komendą.

Wdrożeniowo najlepiej przyjąć taką kolejność:

  1. Ustal wersję domyślną listingu — bez parametrów sortowania, widoku i limitu produktów.
  2. Wymuś spójne linkowanie wewnętrzne do wersji kanonicznej tam, gdzie filtr lub sortowanie nie jest potrzebne.
  3. Dodaj canonical z wariantów sortowania do wersji domyślnej.
  4. Sprawdź HTML po renderowaniu, szczególnie jeśli canonical jest generowany przez JavaScript.
  5. Zweryfikuj adresy w Google Search Console, bo Google może wskazać inny canonical niż deklarowany przez użytkownika.
  6. Przejrzyj logi serwera albo raport statystyk indeksowania, żeby zobaczyć, czy robot nie traci czasu na masowe adresy z parametrami.

W wielu projektach problem nie leży w samym tagu, tylko w tym, że system generuje zbyt wiele wariantów URL. Canonical ogranicza skutki. Nie usuwa przyczyny.

To ważne przy dużych sklepach. Canonical jest instrukcją dotyczącą przetwarzania i konsolidacji sygnałów, ale Googlebot nadal musi pobrać stronę, żeby ten tag odczytać. Jeżeli sklep generuje setki tysięcy adresów z parametrami sortowania, widoku, limitu produktów i przypadkowymi kombinacjami filtrów, robot może zużyć znaczną część crawl budgetu na strony, które nigdy nie powinny pracować w indeksie.

Efekt jest bardzo praktyczny: Google częściej odwiedza techniczne warianty listingów, a rzadziej dociera do nowych produktów, świeżych kategorii albo ważnych zmian w asortymencie. W małym sklepie problem może być niewidoczny. W dużym katalogu robi się kosztowny.

Rozwiązaniem systemowym jest kontrola już na poziomie generowania linków:

  • linki do sortowania mogą działać dla użytkownika jako element interfejsu, ale nie muszą być zwykłymi linkami HTML łatwymi do masowego crawlowania;
  • techniczne parametry sortowania, widoku i limitu produktów nie powinny być eksponowane w menu, breadcrumbsach, modułach linkowania i mapach XML;
  • indeksowalne filtry powinny dostawać czyste, przyjazne URL-e, a nie przypadkowe kombinacje parametrów;
  • crawlery i logi serwera powinny regularnie pokazywać, które wzorce URL zużywają zasoby robota.

W starszych poradnikach można jeszcze znaleźć rekomendację ustawiania obsługi parametrów w Google Search Console. Tego rozwiązania nie należy już planować jako elementu wdrożenia, bo Google wycofało narzędzie parametrów URL w 2022 roku. Dziś kontrolę trzeba robić w architekturze sklepu: linkowaniem, strukturą adresów, canonicalami, mapami XML, regułami indeksacji i technicznym ograniczaniem niepotrzebnych wariantów.

Ostrożnie z robots.txt. Jeżeli zablokujesz adres z parametrem, Googlebot może nie wejść na stronę i nie odczytać canonicala. Blokada crawlowania ma sens tylko tam, gdzie świadomie odcinasz robotom dostęp do wzorców bez wartości. Nie stosuj jej jako prostego zamiennika canonicala.

Paginacja w SEO: dlaczego strona 2 nie powinna zwykle wskazywać canonicalem na stronę 1

Paginacja ma inną logikę niż sortowanie. Strona druga, trzecia czy czwarta kategorii nie jest kopią strony pierwszej. Zawiera inne produkty, inne artykuły albo inne ogłoszenia.

Jeśli ustawisz canonical ze wszystkich stron paginacji na stronę pierwszą, wysyłasz sygnał: „te strony są duplikatami, traktuj stronę pierwszą jako główną”. W e-commerce to często szkodzi.

Dla kategorii produktowej bezpieczniejszy schemat to zwykle:

<!-- /buty-damskie?page=2 -->
<link rel="canonical" href="https://twojsklep.pl/buty-damskie?page=2" />

czyli self-canonical na każdej stronie paginacji.

Dlaczego? Bo /buty-damskie?page=2 ma własny zestaw produktów. Jeśli Google ma dojść do produktów z dalszych stron listingu, nie powinieneś mówić mu canonicalem, że te strony są tylko kopiami pierwszej. Szczególnie w sklepach z dużym asortymentem źle ustawiona paginacja potrafi ograniczyć odkrywanie produktów i spłycić indeksację.

Są wyjątki, ale trzeba je traktować ostrożnie. Canonical z paginacji do strony pierwszej można rozważyć wtedy, gdy kolejne strony naprawdę nie mają samodzielnej wartości indeksacyjnej i nie są istotną drogą do odkrywania treści. W typowej kategorii produktowej to rzadkie.

Dobra paginacja powinna spełniać kilka warunków:

  • każda strona paginacji ma unikalny adres URL, np. ?page=2;
  • każda strona paginacji ma canonical do samej siebie;
  • linki do kolejnych stron są dostępne jako normalne linki HTML;
  • strona pierwsza nie jest jedynym adresem, do którego prowadzi cała seria;
  • produkty z dalszych stron mają też inne ścieżki odkrywania, np. podkategorie, indeksowalne filtry, linkowanie wewnętrzne lub mapa XML produktów;
  • każda kolejna strona serii posiada unikalny tag <title>, np. przez dynamiczne dodanie przyrostka „– Strona 2” na końcu tytułu.

Ten ostatni punkt jest drobny wdrożeniowo, ale ważny diagnostycznie. Jeżeli wszystkie strony paginacji mają identyczny title, raporty w Google Search Console i crawlerach szybko zasypią zespół błędami o duplikacji tytułów. Przykład:

Kurtki zimowe damskie – TwojSklep
Kurtki zimowe damskie – Strona 2 – TwojSklep
Kurtki zimowe damskie – Strona 3 – TwojSklep

Nie należy też opierać strategii paginacji na rel="prev" i rel="next". Google oficjalnie wycofało wsparcie dla tych atrybutów wiosną 2019 roku i całkowicie je ignoruje. Mogą zostać w kodzie ze względów porządkowych, dostępnościowych albo dla innych systemów, ale dla Google nie są fundamentem indeksacji.

Fundamentem technicznym dla Google jest dziś: unikalny URL, self-canonical na stronach paginacji, dostępne linkowanie HTML, poprawny title i treść dostępna po renderowaniu.

Problem pojawia się też przy przycisku „Załaduj więcej” i infinite scrollu. Jeśli kolejne produkty pojawiają się tylko po kliknięciu, a nie mają osobnych adresów URL dostępnych dla robota, część asortymentu może być trudniejsza do odkrycia. Najlepsze rozwiązanie to połączenie wygodnego interfejsu dla użytkownika z techniczną paginacją dla wyszukiwarki: użytkownik widzi płynne ładowanie, ale system nadal udostępnia adresy typu ?page=2, ?page=3, ?page=4.

Granica decyzyjna jest prosta: jeśli strona paginacji zawiera unikalne elementy, które mają zostać odkryte, linkowane i potencjalnie zaindeksowane, nie kanonikalizuj jej do strony pierwszej.

FAQ: najczęstsze pytania o canonical przy filtrach, sortowaniu i paginacji

Czy tag canonical gwarantuje, że Google wybierze wskazany URL?
Nie. Canonical jest silnym sygnałem, ale nie bezwzględnym poleceniem. Google może wybrać inny adres, jeśli linkowanie, mapa XML, przekierowania, treść strony lub inne sygnały pokazują coś innego.

Czy wszystkie filtry powinny mieć canonical do kategorii głównej?
Nie. Filtry z potencjałem SEO, np. marka, typ produktu, materiał albo popularny kolor, często powinny mieć własny indeksowalny URL i self-canonical. Do kategorii głównej warto kanonikalizować głównie filtry techniczne, przypadkowe kombinacje i warianty bez osobnej intencji wyszukiwania.

Czy sortowanie powinno być indeksowane?
Zwykle nie. Sortowanie po cenie, popularności, nazwie czy dacie najczęściej pokazuje tę samą zawartość w innej kolejności. Najczęstsza rekomendacja: canonical z adresu sortowania do domyślnej wersji listingu.

Czy strona druga paginacji powinna wskazywać canonicalem na stronę pierwszą?
W typowej kategorii produktowej — nie. Strona druga zawiera inne produkty niż strona pierwsza, więc powinna mieć canonical do samej siebie. Canonical do strony pierwszej może utrudnić odkrywanie głębiej położonych produktów.

Czy rel=”prev” i rel=”next” pomagają Google w paginacji?
Nie. Google wycofało wsparcie dla rel="prev" i rel="next" w 2019 roku i ignoruje te atrybuty. Dla Google ważniejsze są dziś unikalne adresy URL, self-canonical, linki HTML i dostępność treści.

Co zrobić, gdy wdrożyłem canonical, a Google w Search Console pokazuje status „Wybrany przez Google inny canonical niż zadeklarowany przez użytkownika”?
To zwykle oznacza sprzeczne sygnały. Google ignoruje tag, jeśli zawartość stron zbyt mocno się różni, np. filtr odcina większość produktów, albo gdy linkowanie wewnętrzne w praktyce prowadzi roboty głównie do wersji z parametrem zamiast do czystej kategorii.

Czy lepiej użyć noindex zamiast canonicala?
Nie jako zamiennika. noindex usuwa stronę z indeksu, a canonical konsoliduje sygnały pod preferowanym adresem. Jeśli chcesz zachować przepływ sygnałów i wskazać główną wersję duplikatu, canonical jest właściwszym narzędziem. noindex stosuj wtedy, gdy strona naprawdę nie ma trafiać do wyników.

Czy canonical można ustawiać przez JavaScript?
Można, ale bezpieczniej umieścić go bezpośrednio w HTML. Jeśli system renderuje canonical przez JavaScript, trzeba sprawdzić wyrenderowany kod, bo rozjazd między HTML-em początkowym a wersją po renderowaniu może wprowadzać sprzeczne sygnały.

Czy canonical oszczędza crawl budget?
Nie bezpośrednio. Robot musi wejść na stronę, żeby odczytać canonical, więc setki tysięcy adresów z parametrami nadal mogą zużywać zasoby crawlowania. Crawl budget ogranicza się głównie przez kontrolę linkowania, strukturę URL-i, mapy XML i niewystawianie robotom technicznych wariantów bez wartości.

Od czego zacząć audyt canonicali w sklepie?
Najpierw sprawdź trzy typy adresów: sortowanie, filtry i paginację. Priorytet numer jeden to paginacja kanonikalizowana do strony pierwszej, wartościowe filtry kierowane canonicalem do kategorii głównej oraz masowo linkowane parametry sortowania. To są błędy, które najczęściej realnie ograniczają widoczność.

CMspace to wydawca portali i blogów. Oferujemy publikacje w dobrze przygotowanych, zadbanych lokalizacjach w oparciu o wysokiej jakości treści. Dostarczamy linki z artykułów sponsorowanych w wielotematycznych i tematycznych serwisach przy zachowaniu atrakcyjnych cen publikacji. [ Gravatar ]

Comments (0)

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Wymagane pola są oznaczone *

Back To Top