Plik sitemap.xml to tak zwany plik mapy witryn, w którym podajemy wszystkie adresy URL danej strony internetowej (więcej szczegółów tutaj). Odpowiednio przygotowany plik XML, w swojej najprostszej formie zawiera adresy URL wszystkich podstron w serwisie, wraz z datą ich ostatniej aktualizacji. 

Przygotowując odpowiednie pliki XML (dla poszczególnych sekcji swojego serwisu), możemy bardzo szybko udostępnić Google dane o adresach URL serwisu oraz o dacie ich ostatniej aktualizacji. Dzięki tym podstawowym informacjom Google, jest w stanie bardzo szybko dotrzeć do nowych oraz zaktualizowanych adresów URL. To wpływa oczywiście na ich szybszą indeksację bądź "reindeksację". O tym jak jeszcze wspomagać indeksację serwisu pisałem tutaj.

Sposób generowania plików sitemap.xml

Pliki sitemap.xml generowane na bieżąco

W większości przypadków pliki sitemap.xml generowane są automatycznie i na bieżąco - takie rozwiązanie polecam też i wam.

Większość systemów CMS posiada wtyczki / dodatki, które zajmą się automatyczną budową plików sitemap.xml oraz ich przebudową i aktualizacją. Aktualizacja wykonywana jest w przypadku dodania nowej strony lub aktualizacji jednej z już istniejących podstron.

Działanie modułu sitemap w ten sposób znacząco usprawnia proces indeksacji serwisu.

Pliki sitemap.xml generowane raz dziennie / raz na X dni automatycznie lub na żądanie

W specyficznych przypadkach, np. bardzo dużych sklepach internetowych, które cierpią na problemy z wydajnością. Pliki sitemap.xml generuje się np. raz dziennie w nocy lub co kilka dni. Spotkałem się również z rozwiązaniami, które polegały na generowaniu plików sitemap.xml na tzw. "żądanie z panelu". Są to rozwiązania bardzo indywidualne i racze niezalecane. Jeśli już musimy odłożyć generowanie plików sitemap na godziny nocne zróbmy to, ale zapewnijmy tutaj automatyzację tego rozwiązania. 

Wymagania Google co do rozmiaru sitemap i ilości URLi

Ilość URLi w pliku sitemap.xml

Obecne wytyczne Google wymagają od nas, aby pojedynczy plik sitemap.xml posiadał maksymalnie 50000 adresów URL. Oznacza to, że jeśli posiadamy więcej adresów, to adres 50001 powinien znaleźć się już w kolejnym pliku Sitemap.xml. 

Waga pliku sitemap.xml 

Pojedynczy plik Sitemap.xml powinien ważyć maksymalnie 50 MB po rozpakowaniu. Pliki oczywiście warto pakować np. do gzip - wspomaga to ich przetwarzanie.

Podział plików sitemap.xml

W przypadku dużych map witryn warto zadbać oto, aby wszystkie mniejsze sitemapy zbierane były w obrębie jednej globalnej mapy witryn - tzw. "indeksu map witryny".

Indeks map witryny to nic innego, jak dodatkowa sitemapa, która zawiera linki do pojedynczych plików sitemap (więcej informacji tutaj). W przypadku, gdy przekroczycie liczbę 50 000 URLi, w którymś z plików, a system wygeneruje kolejny plik sitemap.xml, to powinien on automatycznie trafić do spisu w "indeksie map".

Jeśli zadbać oto, aby indeks sitemap przebudowywał się automatycznie, to jest to rozwiązanie bardzo wygodne i praktyczne.

Automatyzacja przebudowy tego pliku pozwoli wam na zgłoszenie do Search Console jednego pliku (indeksu sitemap) - a Google automatycznie wczyta wszystkie sitemapy w jego obrębie. Jeśli w serwisie pojawi się nowa sitemapa, nie będzie trzeba jej ręcznie zgłaszać w Search Console, ponieważ automatyzacja przebudowy pliku indeksu map zadba o to za nas.

Co trzeba zrobić z plikami sitemap.xml?

Zgłoszenie sitemap w Search Console

Adres indeksu sitemap.xml, a w przypadku gdy go nie posiadacie, adresy wszystkich sitemap.xml, należy koniecznie zgłosić w narzędziu Search Console:

! UWAGA

W obecnej wersji Search Console, może zdarzyć się, że po zgłoszeniu pliku sitemap.xml, narzędzie wskaże wam błąd co do przetwarzania lub pobrania pliku sitemap.xml:


 

Należy wtedy odczekać około 1-2 dni - zdarza się bowiem, że zamiast komunikatu "przetwarzanie" mamy informacje o błędzie.

W praktyce Google przetwarza waszą mapę i zmieni ten komunikat po około 2 dniach na dane dotyczące statystyk indeksu.

Dodanie adresów sitemap.xml do pliku robots.txt

Nie samym Google człowiek żyje, dlatego adresy sitemap warto dodać również do pliku robots.txt. Wystarczy dopisać je w nowej lini na końcu pliku, np. tak jak poniżej:

User-agent: *
Disallow: /*?search=
Disallow: /*?fb_comment_id=

User-agent: AdsBot-Google
Disallow: /wiedza/wyszukiwarka-google-grafika

Sitemap: https://seostation.pl/sitemap_2.xml
Sitemap: https://seostation.pl/sitemap_1.xml

W ten sposób poinformujecie roboty innych wyszukiwarek o adresach, pod jakimi mogą znaleźć one wasze pliki sitemap.xml

Bardzo szczegółowy podział sitemap ze względu na ich zawartość

Podział plików sitemap.xml na bardzo szczegółowy, pozwoli wam na lepsze kontrolowanie indeksacji poszczególnych sekcji waszego serwisu.

Absolutnym minimum jest tutaj to, aby w serwisie istniały dedykowane sitemapy dla poszczególnych widoków. Mam tutaj na myśli to, aby każdy typ podstron posiadał swoje odrębne sitemapy.

Na przykładzie sklepu internetowego, powinno to być coś takiego jak poniżej:

  • Wpisy - sitemap_wpisy_01.xml, sitemap_wpisy_02.xml itd.
  • Kategorie wpisów - sitemap-kategorie-wpisow-01.xml, sitemap-kategorie-wpisow-02.xml
  • Produkty - sitemap-produkty-01.xml, sitemap-produkty-02.xml itd.
  • Kategorie produktowe - sitemap-kategorie-produktow-01.xml, sitemap-kategorie-produktow-02.xml itd.
  • Strony statyczne - sitemap-statyczne-01.xml, sitemap-statyczne-02.xml itd.
  • Strony systemowe itd - sitemap-systemowe-01.xml, sitemap-systemowe-02.xml itd.

Jeśli macie możliwość rozbicia sitemap produktów na bardziej szczegółowe, do odrębnych plików ze względu na np. na kategorię produktową, zróbcie to:

  • Produkty - sitemap-produkty-meble-do-salonu-01.xml, sitemap-produkty-meble-do-salonu-02.xml itd.
  • Produkty - sitemap-produkty-meble-do-sypialni-01.xml, sitemap-produkty-meble-do-sypialni-02.xml itd.

Tak bardzo szczegółowy podział, wprowadzony na etapie generowania sitemap.xml, da wam lepsze dane zwrotne odnośnie indeksacji i duplikacji treści od Google po przetworzeniu map.

Analizowanie danych zwrotnych z Search Console dla plików sitemap

Po przetworzeniu plików sitemap.xml przez Google, w Search Console zobaczycie szczegółowe dane co do ilości wykrytych w nich adresów URL:

Jeśli klikniecie w ikonę wykresu przy wybranej sitemapy, dostaniecie jeszcze bardziej szczegółowe informacje zawężone tylko do tej sitemapy:

Ważne jest tutaj to, że po kliknięciu w ikonę wykresu, zostaniecie przeniesieniu do zakładki "Stan". A dane w tej zakładce przefiltrowane zostaną do adresów URL, tylko z pliku sitemap.xml, przy którym nastąpiło kliknięcie:

Oznacza to, że możecie przeglądać zawężone dane i dowiedzieć się np. tego, że 5 z waszych produktów uznanych zostało przez Google za duplikaty. Im większy sklep tym danych oczywiście więcej.

Natomiast, im bardziej precyzyjny podział sitemap, tym łatwiej takie dane jest obrabiać i analizować. Z uwagi na to, podział sitemap produktów, według poszczególnych kategorii produktowych pozwoli wam na bardzo dokładny przegląd indeksacji, duplikacji i problemów w poszczególnych działach towarowych :).