Spis treści
Jak było przed grudniem 2019 roku
W 2012 roku Google nagrało film z Maile Ohye, z którego mogliśmy się dowiedzieć, w jaki sposób właściwie stosować paginację w serwisie, z korzyścią dla widoczności naszej strony w Google.
Maile wyróżniła dwa przypadki:
1) w serwisie, obok stron z paginacją, występuje także jedna strona, tzw. „podsumowująca”, zawierająca w sobie wszystkie strony z serii (czyli mamy 101 produktów w danej kategorii w sklepie, podzielonych po 25 na stronie. czyli występują w serii 4 strony z 25 elementami oraz jedna z .. jednym – czyli razem 5 stron z paginacją) oraz stronę przedstawiającą wszystkie 101 produktów.
2) „podsumowującej strony” w serwisie nie ma, są tylko strony oparte na paginacji.
Serwis ze stroną „podsumowującą”
Właściciele takich serwisów mają w takiej sytuacji trzy opcje do wyboru. Mogą oni
- zostawić serwis takim, jakim jest – Google powinno sobie poradzić i zaindeksować stronę „podsumowującą”
- użyć tagu kanonicznego na stronach z paginacją – kierującego roboty do „pełnej” strony
- użyć rel=”next” oraz rel=’prev” – za pomocą których poinformujemy Google, że strony z paginacją są wprawdzie osobnymi elementami, ale wszystkie należą do jednej serii.
Jest jedna bardzo ważna różnica między 2 a 3 przypadkiem. O ile przy tagu kanonicznym kierujemy roboty na stronę „podsumowującą”, zawierającą „w sobie” wszystkie strony częściowe, o tyle stosowanie rel=”prev” rel=”next” kieruje roboty na jedną, najbardziej „właściwą”, stronę, zwykle pierwszą z serii – i taką też indeksuje w wynikach wyszukiwania.
Warto o tym niuansie wiedzieć – ponieważ nie zawsze chcemy skierować użytkownika na stronę zawierającą „wszystko” – niekiedy liczy się tylko strona pierwsza z serii – a pozostałe np. 19już nie. Jest to ważne w przypadku np. sklepu, który ma, powiedzmy rozbitą kategorię na 20 stron po 10 elementów, ale produkty na pierwszej stronie są źródłem 80% przychodów z danej kategorii. Zamiast zatem prezentować w wynikach wyszukiwania całą, długą listę wszystkich 200 produktów – pokażmy użytkowników 10 najważniejszych.
Serwis bez strony „podsumowującej”
Tutaj mamy zamiast trzech jedynie dwie opcje dostępne
- Zostawiamy serwis „takim, jak jest”
- Używamy rel=”prev” rel=”next”
Sie stosujemy tagu kanonicznego! (nie mamy strony „podsumowującej”)
Co zmieniło się po 2019 roku
W 2019 roku Google stwierdziło, że przestanie używać rel prev/next do celów indeksacji, uznając, że potrafi sobie poradzić ze znalezieniem poszczególnych stron paginacji (aby było ciekawiej innej wyszukiwarki nie poszły tak daleko – Bing nadal wspiera rel prev/next).
Webmasterzy przestali już robić też strony podsumowujące (dawno ich już nie widziałem).
Jak obecnie właściwie używać paginacji
- Należy umożliwić indeksowanie KAŻDEJ stronie – 1,2, 3 ,… ostatniej (nie używaj dla stron 2,3…. w sekcji robots tagu noindex).
- Każda strona posiada tag kanoniczny, który kieruje do niej samej – tag kanoniczny na stronie 1 kieruje do adresu url strony 1, tag kanoniczny na stronie 2 kieruje do adresu url strony 2 itp.
- Jeżeli w wyniku włączenia parametrów (np. sortowania produktów) są one dopisywane do adresu url, to tag kanoniczny nie ulega zmianie.
- Poszczególne strony likujemy między sobą za pomocą bezwzględnych adresów url.
- Google zaleca, aby „na wszystkich poszczególnych stronach kolekcji umieścić linki prowadzące z powrotem do pierwszej strony kolekcji, aby zaznaczyć dla wyszukiwarki Google początek kolekcji. Podpowie to wyszukiwarce, że pierwsza strona kolekcji może być lepszą stroną docelową niż pozostałe strony w kolekcji.” (rzadko się z tym spotykam i sam na razie preferuję tradycyjne rozwiązanie, czyli strona 5 linkuje do strony 4 oraz 6).
- Każda strona musi posiadać swój własny adres url
- W linkowaniu paginacyjnym nie używamy znaku hash – „#” – ponieważ jeżeli Googlebot napotka adres URL prowadzący do następnej strony, który różni się tylko tekstem po
#
, może nie podążyć za linkiem, uznając, że pobrał już stronę.
Co z rel prev/next po 2019 roku
W przeszłości robot Google do identyfikowania następnej i poprzedniej strony korzystał z tagów rel prev/next. Możesz ich nadal używać, ponieważ, inne wyszukiwarki (np. Bing) wykorzystują je do zrozumienia struktury strony. Jeżeli się na nie zdecydujesz, pamiętaj, aby linki wskazywane w rel prev/next kierowały do stron z takim samym ustawieniem sortowania w adresie url, jak strona, na któej się znajdujesz. Jeżeli jesteś na 3 stronie serwisu – (…)/page=3&price=high, to rel prev musi kierować do (…)/page=2&price=high a rel next do (…)/page=4&price=high. I bardzo ważne – tag kanoniczny dla strony 3 w serii nie ulega zmianie – jest cały czas (…)/page=3
Wybieranie najlepszego wzorca UX
Google przygotowało dodatkowe informacje w tym zakresie, w których zwrócono uwagę na trzy podejścia, różniące się „pokazywaniem” kolejne strony wynikającej z paginacji, w zależności od jej mechanizmu.
- Strona posiada wdrożoną paginację
- Można wczytać kolejne strony, korzystając z przycisku „Pokaż więcej”
- Strona ma wdrożony tzw. infinity scroll.
Osobiście zalecam stosowanie 1 rozwiązania, ponieważ mimo, że wydawać by się mogło, że 2 i 3 opcja są wygodne, to jednak w takiej sytuacji Googlebot nie obsłuży dużo wyników, bo wszystkie znajdują się na jednej stronie.
Najczęstsze błędy związane z paginacją
Najczęstszym błędem webmasterów jest indeksowanie tylko pierwszej strony (np. kategorii) – i albo ustawianie noindex dla pozostałych LUB ustawianie tagu kanonicznego na stronach od 2 włącznie, który kieruje do pierwszej strony w serii.
Zdarza się, że wszystkie strony serii mają index, follow, ale już tag kanoniczny kieruje do pierwszej strony serii.
„Dużo się dzieje”, gdy w grę wschodzą parametry. Wówczas (często) zmienia się url, ale webmasterzy zapominają o tagu kanonicznym (który nie może ulegać zmianie). Ostatnio często analizuję strony, na których tag kanoniczny jest poprawny dla stron z paginacją, ale tylko pod warunkiem, że nie zaczniemy używać parametrów. Wówczas dzieją się tam różne „dziwne rzeczy” (tag kanoniczny przybiera dziwne formy) – i jak potem Google ma sobie poradzić?).
Witam,
Czy mając w URL parametr SORT zamiast SID (z ostatniego przykładu) użycie 'canonical’, 'prev’ i 'next’ wygląda tak samo? Chodzi głównie u 'canonical’ czy na stronie /page-2/sort-X ma być 'canonical’ do /page-2 czy do /page-1?
@Wojciech: IMO powinno się wskazać stronę page-2 bez sortowania. Wskazanie page-1 oznaczałoby wskazanie tylko pierwszej strony jako kanonicznej dla wszystkich stron, a page-1 nie jest przecież stroną zbiorczą. Jeśli mówimy o parametrach to warto jeszcze wskazać w GWT odpowiednie traktowanie parametru sortowania przez Google. Trzeba zadbać o to, żeby w Google znalazły się pojedyncze wersje stron, a nie we wszystkich możliwych konfiguracjach sortowania i filtrowania, bo tak naprawdę będą to duplikaty, np. z różną kolejnością produktów.
@Przemek: Dzięki za wyjaśnienie.
A jakie jest stanowisko autora w tej sprawie? Dobrze mówię, czy wprowadzam w błąd? 🙂
Dobrze 🙂 – w końcu canonical jest od tego, aby wskazywać głowną wersję strony – tzn. taką, którą chcemy, aby Google zaindeksowało – czyli np. sortowanie produktów po cenach MALEJĄCO. Zawartość page-1 będzie zawsze inna niż page-2.
W pomocy Google jest zresztą zapis: „Tak. Atrybut rel=”canonical” powinien być używany tylko do określania preferowanej wersji z wielu stron o identycznej treści (chociaż drobne różnice, takie jak porządek sortowania, są dopuszczalne). ”
Zachęcam wejścia na stronę http://support.google.com/webmasters/bin/answer.py?hl=pl&answer=139394 🙂
Strona 7 przy sortowaniu 1 nie jest:
– stroną 7 przy sortowaniu 2
– stroną 1 przy sortowaniu 1
– stroną 1 przy sortowaniu 2
i powinna mieć canonical ustawiony na własny adres, a nie na adres innej strony.
Według pomocy Google „drobne różnice, takie jak porządek sortowania, są dopuszczalne”, ale zupełnie inna lista wpisów spowodowana innym podziałem na strony jest bardzo dużą różnicą.
„drobne różnice, takie jak porządek sortowania, są dopuszczalne” – tutaj chyba chodzi o sortowanie na stronach typu „view all” – wtedy to ma ręce i nogi… chyba trzeba będzie zapytać na forum google.
A co sądzicie o rozwiązaniu polegającym na dodaniu do podstron kategorii sklepu noindex,follow. Zaindeksuje się tylko główna strona kategorii a robot i tak będzie hulał po reszcie indeksując produkty a nie podstrony paginacji. Podstrony paginacji kategorii do niczego nie są potrzebne w site podobnie jak strony z regulaminami, kosztami wysyłki etc. . Myślę, że taka opcja jest korzystna w przypadku gdy na stronie kategorii znajduje się rozbudowany jej opis, wtedy indeksacja 20 podstron z podobnym opisem na kilkaset do tysiąca znaków była by szkodliwa w kontekście DC, zwłaszcza że na stronach kategorii sklepów nie ma zbyt wiele treści aby taki opis „zginął w tłumie”. W tworzonym przez siebie sklepie wdrażam taką opcję i zobaczymy.
Przypadek ze stroną podsumowującą, punkt 2 – prosto, bez kombinowania 🙂
Co zrobić gdy na stronie głównej znajduje się 10 produktów – adresstrony.pl, na stronie adresstrony.pl/page1 te same produkty? A na stronie adresstrony.pl/page2 kolejne produkty?
Czy zrobić przekierowanie 301 z adresstrony.pl/page1 na adresstrony.pl/ a na tej stronie dać
?
No masz w artykule dwa rozwiązania – w zależności od tego, czy masz stronę podsumowującą, czy też nie.
Nie da się tego lepiej opisać, niż zrobiłem 🙂
Ale jak mamy duplikat stronaglowna.pl i stronaglowna.pl/page1 to czy zrobić 301 z stronaglowna.pl/page1 na stronaglowna.pl?
Albo canonical ustawiasz – on działa jak przekierowanie 301