WordPress 5.5 wprowadza istotną zmianę: mapa strony (ang. XML sitemap) zostanie automatycznie wygenerowana dla każdej witryny posadzonej na WordPressie.
Choć intencje autorów pomysłu były dobre, okazuje się, że temat ten budzi sporo kontrowersji.
Rodzą się pytania:
Czy to dobrze czy źle?
Po co mi w ogóle mapa strony?
Jak wygląda przykładowa mapa generowana przez WordPressa?
Jaką ma nazwę i gdzie jej szukać?
Czy można ją modyfikować?
Czy Google automatycznie wykryje tę mapę?
A co, jeśli ja już używam mapy, którą generuję wtyczką? Będzie konflikt?
Można całkowicie wyłączyć generowanie tej mapy?
Odpowiedzi na te i wiele innych pytań dotyczących XML-owej mapy strony w WordPressie znajdziesz w tym wpisie.
Co to jest XML sitemap?
Wyobraź sobie, że stworzyłeś stronę na WordPressie. Ma ona mnóstwo stron i podstron, wpisów, może nawet jakiś wpisów opartych o custom post types.
Zależy ci, żeby Google czy inne wyszukiwarki poznały całą twoją witrynę i zindeksowały wszystkie twoje treści. Żeby nie pominęły żadnej ważnej podstrony, a w przyszłości nowych, które będą pojawiać się później.
Potrzebujesz mapy witryny, czyli spisu wszystkich twoich stron i podstron WordPressa w formie odnośników do nich.
Dzięki takiej mapie boty indeksujące łatwiej znajdą każdy kawałek twojej witryny i zapoznają się z jej treścią. Ale żeby tak się stało, taka mapa nie może być zwykłym spisem linków w HTMLu. Musi mieć ustalony format.
Za chwilę dowiemy się, że będzie to format XML, ale póki odpowiedzmy na bardziej zasadne pytanie:
Po co mi w ogóle taka mapa?
Czy coś poważnego się stanie, jak moja witryna nie będzie mieć mapy strony?
Nie.
Boty wyszukiwarek zwykle odkrywają kolejne podstrony poprzez analizę istniejących odnośników w ramach twojej witryny.
Ale jeśli takiej mapy strony nie wygenerujesz, jest ryzyko, że niektóre z twoich podstron zostaną niezauważone, szczególnie takie, które nie pojawiają się w menu głównym i odnośniki do nich są gdzieś „zakopane” w zakamarkach innych treści, albo zapomnieliśmy te nowe podstrony gdziekolwiek podlinkować.
Mapa witryny szczególnie przydaje się w dużych, rozbudowanych witrynach, o złożonej strukturze stron i podstron.
Przykładowa mapa witryny w formacie XML
Mapa witryny stanowi zatem uporządkowany dodatek do informacji, którą boty indeksujące i tak jakoś, prędzej czy później by odnalazły. Podaje na tacy botom indeksującym wszystkie linki do stron w ramach twojej witryny.
Żeby informacje zapodać w sposób uporządkowany i ustandaryzowany, potrzeba przedstawić je w odpowiednim formacie. Dla mapy witryny obowiązującym standardem jest format XML.
Poniżej załączam przykład mapy witryny w formacie XML wygenerowany dla bloga, który właśnie czytasz. A właściwie jej niewielki fragment.
Fragment przykładowej mapy strony w formacie XML
Jeśli chcesz poczytać więcej na temat formatu XML dla sitemap, zajrzyj na stronę https://www.sitemaps.org/protocol.html.
Sitemap XML teraz w twoim WordPressie
Od WordPressa w wersji 5.5 (wdrożenie masowe planowane na sierpień 2020), każda witryna dostanie taką mapę automatycznie.
Dlatego wypadałoby wiedzieć coś więcej na ten temat…
Zacznijmy od najważniejszych rzeczy.
Jaką nazwę ma mapa witryny generowana przez WordPressa?
Mapa, którą wygeneruje ci WordPress będzie mieć nazwę:
wp-sitemap.xml
Czyli, zobaczy ją każdy, kto do adresu witryny siedzącej na WordPressie doda końcówkę /wp-sitemap.xml. Przykładowo, dla tego bloga będzie to:
… bo ten blog siedzi pod adresem webfaces.pl/blog.
Co znajdzie się na mapie witryny generowanej przez WordPressa?
Gdy odwiedzimy mapę wp-sitemap.xml wygenerowaną przez WordPressa, czeka nas mała niespodzianka.
Otóż najpierw zobaczymy jedynie króciutki zbiór linków (a nie jak można by się spodziewać całe stado odnośników).
Mapa wygenerowana przez WordPress może wyglądać tak:
Przykładowa mapa wygenerowana przez WordPressa
A więc zobaczymy najpierw coś w rodzaju spisu treści kolejnych map, a niej znajdziemy:
link do mapy wszystkich wpisów witryny
link do mapy wszystkich stron witryny
link do mapy wszystkich wpisów opartych o danych typ wpisu (CPT) – dla każdego typu wpisu będzie osobny link (osobna podmapa)
link do mapy wszystkich kategorii
link do mapy wszystkich tagów
link do mapy wszystkich taksonomii (dla każdej taksonomii będzie osoby link)
link do mapy wszystkich użytkowników
I dopiero każdy z tych linków zawiera konkretne już adresy stron. Dla przykładu, po kliknięciu w pierwszy z plików xml z obrazka wyżej zobaczymy:
Przykładowa „podmapa” wygenerowana przez WordPressa, dostępna po kliknięciu w jeden z linków mapy głównej.
A zatem mapa strony w formacie XML generowana przez WordPressa jest dwupoziomowa.
Ilustruje to poniższy schemat:
Struktura mapy strony generowanej przez WordPressa
Na powyższym schemacie dla przykładu rozwinęłam tylko dwie z map: mapę wpisów i mapę termów taksonomi.
Czy można coś usunąć z tej mapy?
Tak, będzie można usuwać elementy z mapy, ale tylko programistycznie – poprzez wykorzystanie tzw. hooków: filtrów i akcji.
Co będzie można usunąć z mapy:
konkretny wpis/stronę
konkretny typ wpisu
konkretną taksonomię
konkretny term
konkretnego użytkownika
wszystkich użytkowników o wskazanej roli
Nazwy tych hooków znajdziemy w opisie wtyczki Core Sitemap, w ramach której była rozwijana koncepcja zanim weszła do silnika WordPressa.
Czy można wyłączyć generowanie mapy witryny?
Tak, można wyłączyć automatyczne generowanie mapy witryny przez WordPressa, ale tylko programistycznie.
przy pomocy filtra wp_sitemaps_enabled:
add_filter('wp_sitemaps_enabled', '__return_false');
albo wykorzystując funkcję:
remove_action( 'init', 'wp_sitemaps_get_server' );
Dlaczego ktoś miałby pozbywać się tej mapy? W końcu jej obecność ma pomóc w lepszej indeksacji naszej witryny…
Przyczyny mogą być różne. Oto najczęstsze:
twoja witryna już posiada mapę generowaną przez wtyczkę
twoja strona indeksuje się dobrze i bez mapy, a na mapie masz sporo stron, które chciałbyś ukryć i nie chce ci się bawić w wyłączanie poszczególnych z nich
Czy można sterować tą mapą z poziomu panelu WordPressa?
Nie.
Wszelkich manipulacji na tej mapie generowanej przez WP można dokonać tylko programistycznie, poprzez wykorzystanie hooków (filtrów i akcji, jak w przykładach wyżej).
Być może niebawem w ekosystemie WordPressa pojawią się wtyczki, które umożliwią lepszą kontrolę nad mapą poprzez wygodny interfejs użytkownika.
Autorzy WordPressa postawili na prostotę.
A co, jeśli ja używam już wtyczki do generowania mapy witryny?
Wiele stron na WordPress już dziś generuje mapę strony za pomocą wtyczek. Oto kilka popularnych:
Użycie wtyczki do wygenerowani mapy strony XML teraz nie będzie już potrzebne.
Jednak nic nie stoi na przeszkodzie, żeby zachować mapę generowaną przez wtyczkę.
Czy mapa wygenerowana automatycznie przez WP wejdzie w konflikt z mapą wygenerowaną przez wtyczkę?
Autorzy nowego rozwiązania zapewniają że nic takiego się nie stanie, nawet jeśli nasza witryna będzie mieć dwie mapy.
Ale lepiej trzymać się jednej, choćby ze względu na fakt, że pająki Google’a same mogą na naszą sitemapę się natknąć…
Czy Google automatycznie wykryje mapę witryny wygenerowaną przez WordPressa?
Mapę strony zwykle zgłasza się do Google „ręcznie”. Robi się to poprzez Google Search Console wprowadzając link to mapy strony. (Na blogu Yoast SEO we wpisie Submit Your Sitemap to Search Engines możesz przeczytać o zgłaszaniu mapy strony do Google i do innych wyszukiwarek).
Jednak, jeśli twoja witryna zawiera plik robots.txt z linkiem do mapy witryny, to boty Google’a (czy innej wyszukiwarki) automatycznie dowiedzą się o istnieniu mapy witryny.
W WordPressie 5.5 dodano funkcję (add_robots), która dodaje automatycznie mapę witryny do pliku robots.txt generowanego przez WordPressa.
Nie stanie się tak jednak, gdy jawnie poprosiłeś w ustawieniach WordPressa (Ustawienia -> Czytanie), żeby twoja witryna nie była indeksowana. Wówczas link do mapy witryny nie trafi do pliku robots.txt.
Boty Google’s czytają plik robots.txt a więc w ten sposób trafią na link to mapy witryny wygenerowanej przez WordPressa, a więc teoretycznie nie musisz takiej mapy zgłaszać do Google’a jawnie.
Ale…
Nie wszystkie strony WordPressowe mają plik robots.txt.
Ten blog na przykład nie ma…
Czy moja strona na WordPressie posiada plik robots.txt?
WordPress automatycznie generuje plik robots.txt. Ten automatycznie tworzony przez WP to plik wirtualny i nie zobaczysz go w drzewie katalogów. Za to możesz go podejrzeć doklejając do nazwy swojej domeny: /robots.txt.
Tak wygląda klasyczny plik robots.txt generowany automatycznie przez WordPressa:
Plik robots.txt generowany automatycznie przez WordPressa
A tak będzie wyglądać ten plik w WordPressie 5.5+ Mapa witryny zostanie dodana automatycznie:
Plik robots.txt generowany automatycznie przez WordPressa od wersji 5.5 zostanie wzbogacony o link do mapy strony
Uwaga
Jeśli twój WordPress udostępniany jest poprzez podkatalog, tak jak ma to miejsce w przypadku tego bloga:- webfaces.pl/blog, plik robots.txt nie powstanie.
Czy to dobrze, czy źle, że generowanie mapy strony teraz będzie automatycznie?
Skoro autorzy WordPressa wprowadzają automatyczne generowanie mapy do silnika WordPress, to znaczy, że potrzeba jest i należałoby się spodziewać więcej korzyści niż problemów.
Ale czy tak rzeczywiście jest? Zdania są podzielone.
Co na plus?
Okazja do poprawienia SEO bez instalowania kolejnej wtyczki
Sitemapy pomagają (choć nie gwarantują) lepiej zindeksować naszą witrynę w wyszukiwarkach internetowych i przez to poprawić jej widoczność w sieci.
Jeśli potrzebujemy sitemapy, nie musimy już instalować kolejnej wtyczki.
Okazja do poprawienia SEO bez zgłaszania mapy strony do Google Search Console
WordPressowa sitemapa trafia automatycznie do pliku robots.txt generowanego przez WordPressa, który czytają pająki indeksujące. Więc teoretycznie nie trzeba nawet ręcznie jej zgłaszać do Google’a czy innych wyszukiwarek.
Przegląd wszystkich stron bloga w czytelnej formie
Zwróćmy uwagę, że WordPressowa mapa, mimo, że generowana z myślą o botach wyszukiwarkowych jest czytelna również dla człowieka (częściowo dzięki zastosowaniu xml-owego stylesheetu wp-sitemap-index.xsl – jak kogoś ciekawi dlaczego linki ułożone są w elegancką tabelkę typu zebra, gdzie co drugi wiersz jest szary, niech zerknie na ten plik: https://webfaces.pl/blog/wp-sitemap-index.xsl).
Dzięki przejrzystej formie mapy mamy okazję przypomnieć sobie, co my tam w tej naszej WordPressowej stronie trzymamy.
Być może znajdziemy elementy już dawno niewykorzystywane.
Tak było w moim przypadku.
W mojej mapie strony pojawiły się typy wpisów, których już dawno nie używam.
Jest więc okazja do posprzątania.
Co na minus?
Jest wielu przeciwników wprowadzania site mapy do silnika WordPressa, tym bardziej, że nie można nią łatwo sterować z poziomu panelu.
Oto główne niepokoje:
W mapie witryny znajdą się strony, których nie chcemy zgłaszać do indeksów wyszukiwarek albo ich zgłaszanie kompletnie nie ma sensu (np. strona typu „Dziękuję za zakup” albo potwierdzenie wypisania z subskrypcji).
Często typy wpisów (Custom Post Types) są używane do przeróżnych nieszablonowych zastosowań i nie chcemy, żeby one wszystkie zostały uwzględnione w mapie.
Wiele stron ma już sitemapy i wielu użytkowników martwi się o potencjalne konflikty.
Teraz każdy będzie mógł zobaczyć listę użytkowników naszej witryny (ostatnia pozycja na site mapie to lista userów).
Sporo osób uważa, że sam mapa w WordPressie jest dobrym pomysłem, ale nie można ludzi zostawić bez kontroli (w formie przyjaznego panelu, a nie tylko API dla programistów), co można z niej usunąć.
Wchodzić w te mapy czy nie?
Jeśli jeszcze masz wątpliwości, czy mapa strony w silniku WordPressa to dobry pomysł, zacytuję Fernando Tellado, kontrybutora WordPressa i autora licznych wtyczek:
Wszystkie inne liczące się CMSy mają XML-owe mapy strony bezpośrednio w silniku (np. Magento, Prestashop, etc) i mapa strony to rzecz od dawien dawna w WordPressie oczekiwana, wskazywana w każdej ankiecie, gdzie użytkowników WordPressa pytano o brakujące funkcje. Uważam, że zalety zdecydowanie przebijają wady. Fernando Tellado https://make.wordpress.org/core/2019/06/12/xml-sitemaps-feature-project-proposal/#comment-35980
A ty co myślisz o mapie witryny bezpośrednio w WordPressie?
Używasz sitemap na swoich stronach?
Cieszy cię informacja, że teraz mapę witryny WordPress wygeneruje nam sam?
Comments