Tatsächlich ist der Begriff Sitemap doppelt besetzt. Es handelt sich dabei einerseits um eine Landkarte bzw. ein Diagramm der Website-Struktur für Nutzer, andererseits um ein Inhaltsverzeichnis in einem XML-Dateiformat für Suchmaschinen.
Planung mit einer Sitemap
Bei der Konzeption einer Website und der Erarbeitung einer sogenannten Informationsarchitektur ist die Sitemap ein häufig verwendetes Instrument. Sie visualisiert die Seitenhierarchie und erlaubt so eine Beurteilung der sinnvollen Organisation von Inhalten und Funktionen sowie den dazu passenden Navigationspfaden. Man verwendet dabei in der Regel Abbildungsformen, die Bäumen, Organigrammen oder Mindmaps ähneln.
Bei der Darstellung einer Sitemap braucht es sowohl verschiedene Hierarchieebenen als auch Querverweise zwischen einzelnen Bestandteilen einer Website. Das entspricht den gängigen Prinzipien verschiedener Navigationselemente und Hyperlinks in einem Internetauftritt.
Handelt es sich um ein großes Projekt, wird diese Methode natürlich schnell etwas unübersichtlich. Man fasst dann oft Teilbereiche einer Website zusammen oder nutzt interaktive Werkzeuge, mit denen sich Ebenen oder Äste der Hierarchie ein- bzw. ausblenden lassen. Für einfache Szenarien eignen sich teilweise kostenlose Grafikanwendungen wie zum Beispiel LibreOffice Draw oder der yEd Graph Editor.
Bei der Zusammenarbeit zwischen Website-Betreibern und Agenturen bieten Sitemaps diverse Vorteile. Man kann damit recht gut den Umfang eines Projekts abschätzen, die Anforderungen an ein Design ablesen und parallel Aufgaben zur Erstellung passender Inhalte verteilen. Eine Sitemap ist dabei selbstverständlich nicht in Stein gemeißelt und mag sich im Projektverlauf ändern. Um die Usability einer Website nicht zu gefährden, sollte das jedoch maßvoll geschehen. Wichtig ist außerdem, die Sitemap den Änderungen entsprechend zu aktualisieren.
Beispiel
Folgende Grafik zeigt die exemplarische Gestaltung einer Sitemap, die der Website von wigital zugrunde liegt.
Sitemap als Navigationsinstrument
Die Aufbereitung einer Website-Struktur für die Besucher einer solchen war in den Anfangszeiten des World Wide Web ein durchaus übliches Mittel zur Navigation. Ähnlich einem Inhaltsverzeichnis eines klassischen Dokuments konnte man so die verschiedenen Kapitel direkt ansteuern, um die gewünschten Inhalte abzurufen.
Diese Rolle der Sitemap ist mit der wachsenden Komplexität und den vielfältigeren Aufgaben von Websites heutzutage eher selten geworden. Von Zeit zu Zeit findet man aber noch den Menüpunkt Sitemap in einer Fußzeile und bekommt darunter einen Gesamtüberblick über das jeweilige Angebot.
Weil das nach wie vor eine ganz hilfreiche Methode sein kann, um einen schnellen Zugriff auf bestimmte Ressourcen zu erlauben, verlegt man sich heute eher darauf, den Fußbereich einer Seite mit einer sitemap-ähnlichen Auswahl relevanter Navigationspunkte auszustatten. Dabei verzichtet man in der Regel auf Vollständigkeit und beschränkt sich auf ein bis zwei Hierarchieebenen. Dieses Verfahren sorgt darüber hinaus für eine gute interne Linkstruktur und erleichtert die automatisierte Analyse von Websites durch Anbieter von Suchdiensten.
sitemap.xml zur Indexierung
Suchmaschinen interessieren sich für die URLs, aus denen eine Website besteht, damit sie darunter verfügbare Inhalte untersuchen und bewerten können. Um alle Unterseiten zu erreichen, verfolgen die sogenannten Crawler oder Bots den Verlinkungen, die sie auf einer Website finden. Das ist manchmal etwas mühselig und vor allem rechenintensiv.
Einfacher geht es, wenn der Website-Betreiber eine vollständige Liste aller URLs seines Internetangebots vorhält. Sie kann von einem Suschmaschinen-Bot dann je nach Bedarf einfach abgearbeitet werden. Dazu wurde der Dateistandard sitemap.xml entwickelt, der inzwischen von allen größeren Suchmaschinen unterstützt wird. Eine solche Datei erleichtert und beschleunigt die Indexierung bestehender und neuer Inhalte und wird insofern für jede Website ausdrücklich empfohlen.
Spezifikation im Sitemaps-Protokoll
Die Regeln zur Erstellung einer sitemap.xml sind im sogenannten Sitemaps-Protokoll dokumentiert, das man unter sitemaps.org in diversen Sprachen nachlesen kann. Google, Yahoo! und Microsoft haben es gemeinsam unter einer Creative-Commons-Lizenz veröffentlicht. Die wichtigsten Aspekte des Protokolls sind eine Handvoll XML-Elemente zum Aufbau einer maschinenlesbaren Datei.
<urlset>
Das Element umschließt die gesamte Auflistung und referenziert den Protokollstandard.
<url>
Mit diesem Element wird der Datensatz zu einer einzelnen URL umschlossen.
<loc>
Hierin wird die konkrete URL wird bezeichnet – mit maximal 2.048 Zeichen.
<lastmod>
Optional notiert man das Datum der letzten Änderung im Format des W3C.
<changefreq>
Optional kann die Änderungsfrequenz der URL benannt werden. Mögliche Werte sind dabei always, houry, daily, weekly, monthly, yearly und never. Die Angabe always wird benutzt, wenn ein Dokument sich bei jedem Aufruf ändert und never für archivierte Ressourcen.
<priority>
Auch optional wird die Priorität in einem Wertebereich von 0 bis 1 definiert. Das entspricht nicht einer echten Gewichtung des Dokuments in späteren Suchergebnissen, sondern versteht sich nur als Hinweis an den jeweiligen Crawler, wie relevant eine URL im Verhältnis zu den übrigen der Website sein soll.
Weitere Anforderungen
Die sitemap.xml muss im Zeichensatz UTF-8 codiert sein, in allen enthaltenen Daten sollten spezielle Zeichen wie etwa das Kaufmännische Und, Anführungszeichen und spitze Klammern als sogenannte Entities notiert werden. Darüber hinaus werden die zu lokalisierenden Ressourcen URL-escaped. Folgendes Muster zeigt den idealisierten Aufbau einer Sitemap-Datei.
Beispiel
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://www.domain.tld/</loc>
<lastmod>0000-00-00</lastmod>
<changefreq>monthly</changefreq>
<priority>0.0</priority>
</url>
</urlset>
Beschränkungen und Indexdateien
Eine einzelne sitemap.xml darf laut Protokoll nicht mehr als 50.000 URLs enthalten und nicht größer als 50 MB sein. Eine gzip-Kompression ist zulässig, verändert die genannten Limitationen im unkomprimierten Zustand jedoch nicht. Besteht eine Website aus mehr URLs, kann man mehrere Sitemap-Dateien erzeugen und diese in einer speziellen Indexdatei bündeln. In ihr werden dafür geeignete XML-Elemente verwendet.
<sitemapindex>
Hiermit werden alle Informationen zu den jeweiligen Sitemaps umschlossen.
<sitemap>
Mit diesem Element werden die Angaben zu einer einzelnen Sitemap-Datei zusammengefasst.
<loc>
Im Index wird hiermit die Adresse einer Sitemap oder einer alternativen URL-Liste angegeben. Dabei kann es sich um einen RSS- bzw. Atom-Feed oder eine einfache Textdatei handeln.
<lastmod>
Das optionale Element beschreibt das letzte Änderungsdatum der Sitemap im W3C-Format.
Referenzierung in der robots.txt
Um einer Suchmaschine mitzuteilen, wo genau sich die Sitemap oder der Sitemap-Index einer Website befindet, wird deren URL in der robots.txt hinterlegt. Eine solche Datei gehört ins Stammverzeichnis einer Domain und enthält Anweisungen an Crawler und Bots. Nach dem Robots Exclusion Standard kann damit das Verhalten solcher spezifischer User-agents gesteuert werden, unter anderem damit Teile einer Website bei der Indexierung ausgespart werden. Das folgende Muster zeigt den typischen Aufbau einer robots.txt, in der keine Einschränkungen deklariert wurden, aber außerdem die Referenz zu einer Sitemap enthalten ist.
Beispiel
User-agent: *
Disallow:
Sitemap: www.domain.tld/sitemap.xml
Einreichung und Ping
Ein weiterer Weg, um Sitemaps bei Suchmaschinen einzureichen, sind individuelle Schnittstellen oder Anwendungen, zu denen man sich als Webmaster registrieren kann. Besonders bekannt sind die Google Search Console und die Bing Webmastertools. Darüber hinaus gibt es Ping-Funktionen, um die Existenz einer sitemap.xml mithilfe einer HTTP-Anforderung bekannt zu machen. Für die beiden großen Suchmaschinenanbieter lauten die Ping-URLs wie folgt:
- www.google.com/ping=https://www.domain.tld/sitemap.xml
- www.bing.com/ping=https://www.domain.tld/sitemap.xml
Fazit
Sitemaps können in sehr unterschiedlichen Formen im Web auftreten. Allen gemeinsam ist dabei jedoch, dass sie Menschen bzw. Maschinen die Verarbeitung von Websites und deren Inhalten erleichtern wollen, sei es nun bei der Planung, bei der Navigation oder bei der automatischen Indexierung. Insbesondere durch den Dateistandard sitemap.xml gebührt dem Thema mehr denn je eine hohe Aufmerksamkeit durch Website-Betreiber und deren Dienstleister.
Wir haben unter wigital.tools ein kleines Tool bereitgestellt, mit dem schnell überprüft werden kann, ob unter einer bestimmen Domain eine sitemap.xml vorhanden ist. Weitere Funktionen für einen Website Check sind bereits in Planung.