Wszystkie artykuły

Generowanie sitemap.xml: jak automatycznie zbudować mapę witryny

Ręczne pisanie sitemap.xml dla każdej nowej strony to powtarzalna czynność, którą warto wyeliminować, generując plik automatycznie z listy adresów URL witryny.

Które pola naprawdę mają znaczenie

Tag <loc> z absolutnym adresem strony to jedyne wymagane pole. Warto dokładnie ustawiać <lastmod>, ponieważ Google faktycznie wykorzystuje je do priorytetyzacji ponownego skanowania — w przeciwieństwie do <priority> i <changefreq>, które sama wyszukiwarka deklaruje jako w dużej mierze ignorowane.

Polskie znaki diakrytyczne w ścieżce

Litery takie jak ą, ć, ę, ł, ń, ó, ś, ź czy ż nie należą do bezpiecznego zestawu znaków URL, więc każda z nich trafia do <loc> zakodowana bajt po bajcie w UTF-8 — słowo "ścieżka" w adresie zamienia się w ciąg w rodzaju %C5%9Bcie%C5%BCka, znacznie dłuższy niż oryginalne słowo.

Adresy absolutne i escapowanie znaków specjalnych

Każdy adres w sitemap musi być absolutny (z protokołem i domeną), a znaki takie jak ampersand trzeba zapisać jako encję XML (&amp;) — w przeciwnym razie plik przestaje być poprawnym XML-em, a wyszukiwarka może odrzucić cały plik zamiast pominąć tylko błędny wpis.

Do czego to służy

  • Zbudowanie poprawnego sitemap.xml z listy adresów bez ręcznego pisania XML.
  • Uniknięcie błędów formatowania, przez które wyszukiwarka odrzuca cały plik.
  • Ponowne wygenerowanie pliku po dodaniu nowych stron bez ręcznej edycji znaczników.

Brak deklaracji UTF-8 a polskie znaki

Jeśli plik XML nie deklaruje jawnie <?xml version="1.0" encoding="UTF-8"?>, a mimo to zawiera polskie znaki diakrytyczne zapisane bezpośrednio (poza <loc>, np. w komentarzu), niektóre parsery mogą domyślnie założyć inne kodowanie i wyświetlić je jako bezsensowny ciąg znaków — jawna deklaracja UTF-8 eliminuje tę niejednoznaczność.

Wypróbuj narzędzie