sitemap.xml: Alles über Funktion und Erstellung einer XML-Sitemap
Wer sich intensiver um die Platzierung seines Webprojekts in den Ergebnisseiten der Suchmaschinen kümmert, weiß genau, wie viele unterschiedliche Faktoren den Kampf um die vorderen Plätze beeinflussen. So umfasst die Liste von Faktoren mit Einfluss auf das Ranking bei Google beispielsweise über 200 Kriterien, deren Relevanz teilweise offiziell durch das Unternehmen bestätigt wurde, teilweise aber auch lediglich von Experten vermutet wird. Nicht von ungefähr zählt die Disziplin der Suchmaschinenoptimierung seit Jahren zum Standardrepertoire eines jeden Webmasters, der will, dass seine Website sichtbar und erreichbar ist. Während dabei Faktoren wie relevante Keywords, hochwertige Inhalte oder eine hohe Mobilfreundlichkeit in aller Munde sind, wird der Wert einer guten XML-Sitemap häufig unterschätzt.
Was ist eine XML-Sitemap?
Eine XML-Sitemap (sitemap.xml) ist eine Textdatei im XML-Format (Extensible Markup Language), die eine Auflistung aller Unterseiten einer Website in Link-Form enthält. Als solche kann sie in der Google Search Console oder den Bing Webmaster Tools hochgeladen werden, um den Suchmaschinen-Crawlern alle verfügbaren bzw. relevanten Seiten mitzuteilen und so den Indexierungsprozess zu beschleunigen und zu optimieren. XML-Sitemaps müssen die Vorgaben des Sitemaps-Protokolls erfüllen, das 2006 von Google, Yahoo und Microsoft als Standard beschlossen wurde – mit dem Ziel, die Qualität ausgelieferter Suchresultate langfristig zu verbessern. Daher sind u. a. die Codierung in UTF-8 und die bereits aufgegriffene Auszeichnungssprache XML ebenso vorgeschrieben wie die Verwendung von Entität-Codes für bestimmte Zeichen (wie z. B. „>“ anstelle von „>“).
XML-Sitemaps sind von den Sitemaps zu unterscheiden, die viele CMS automatisch im Frontend ausspielen. Hierbei handelt es sich um das Inhaltsverzeichnis der Website, das den Besuchern die Navigation erleichtern soll. XML-Sitemaps sind hingegen standardmäßig für die Nutzer nicht sichtbar, auch wenn es generell möglich ist, diese über ihre URL aufrufbar zu machen.
Die Vorteile einer XML-Sitemap
Auch wenn es keine Garantie dafür gibt, dass die Indexierung bei Google und Co. durch XML-Sitemaps in jedem Fall optimiert wird – die strukturierten Link-Verzeichnisse erhöhen in jedem Fall die Chancen. Insbesondere bei Seiten mit dynamischen Inhalten, die stetigen Veränderungen ausgesetzt sind, kann sich das crawlerfreundliche Inhaltsverzeichnis auszahlen. Gleiches gilt für größere Webprojekte, die zwar eine hohe Anzahl an Unterseiten, jedoch (noch) keine große Backlink-Struktur aufweisen. Solche Seiten werden tendenziell zu selten auf Änderungen überprüft oder laufen gar unter dem Radar der Suchmaschinen. Dank sitemap.xml rücken Sie sie schneller in den Fokus der Indexierungs-Bots.
Ein weiterer Vorteil: In XML-Sitemaps können nicht nur URLs von Unterseiten, sondern auch von Mediendateien wie Videos oder Bildern aufgeführt werden. Für diese gibt es sogar Extra-Tags, die dem Crawler verraten, um welchen Inhaltstyp es sich handelt (<image>, <video>). Darüber hinaus lassen sich Attribute verwenden, die den Content näher beschreiben oder die Dauer angeben, damit die Suchmaschinen diesen optimal erfassen können. Auch für Newsportale gibt es eine spezielle Abwandlung der XML-Sitemap, die eine optimierte Indexierung von Artikeln dank spezifischer Attribute wie Genre, Publikationsdatum oder Title verspricht.
Ein weiterer Vorteil: In XML-Sitemaps können nicht nur URLs von Unterseiten, sondern auch von Mediendateien wie Videos oder Bildern aufgeführt werden. Für diese gibt es sogar Extra-Tags, die dem Crawler verraten, um welchen Inhaltstyp es sich handelt (<image>, <video>). Darüber hinaus lassen sich Attribute verwenden, die den Content näher beschreiben oder die Dauer angeben, damit die Suchmaschinen diesen optimal erfassen können. Auch für Newsportale gibt es eine spezielle Abwandlung der XML-Sitemap, die eine optimierte Indexierung von Artikeln dank spezifischer Attribute wie Genre, Publikationsdatum oder Title verspricht.
Der Aufwand, der mit der manuellen Erstellung einer XML-Sitemap verbunden ist, müsste eigentlich als Nachteil eines solchen Strukturverzeichnisses für die eigene Website gewertet werden. Dank XML-Sitemap-Generatoren wie dem Online-Generator von XML-Sitemaps.com besteht allerdings keinerlei Notwendigkeit, die praktischen XML-Seiten auf eigene Faust zu generieren. Darüber hinaus gibt es für die meisten Content-Management-Systeme Plug-ins, die das Erstellen von XML-Sitemaps automatisieren.
Aufbau einer XML-Sitemap: Das sind die wichtigsten Komponenten
Die Formatierung einer XML-Sitemap funktioniert – wie bei jedem Dokument in der Auszeichnungssprache Extensible Markup Language – über XML-Tags. Dabei zählen nach dem aktuellen Standard „Sitemaps 0.9“ drei Tags als Pflichtangaben, um von einer XML-Sitemap sprechen zu können:
sitemap.xml: Pflicht-Tags | |
<urlset>, </urlset> | Jede Sitemap-XML-Datei muss mit einem öffnenden <urlset>-Tag beginnen und mit einem schließenden </urlset>-Tag enden. Das Tag hat einerseits die Funktion, die Datei zusammenzufassen und verweist andererseits auf den aktuellen Protokollstandard. |
<url>, </url> | Das öffnende und das schließende <url>-Tag sind den einzelnen URL-Einträgen übergeordnet und kennzeichnen damit Anfang und Ende einer aufgeführten Unterseite. |
<loc>, </loc> | Mit dem <loc>-Tag werden die einzelnen Seiten des Webprojekts bzw. deren URLs gekennzeichnet. Die URL muss dabei immer mit dem Protokoll beginnen (z. B. „http“) und mit einem abschließenden Schrägstrich enden (insofern vom Webserver benötigt). Zudem ist eine maximale Länge von 2.048 Zeichen definiert. |
Abseits dieser obligatorischen XML-Attribute stehen mit den Sitemap-Tags <priority>, <lastmod> und <changefreq> noch drei weitere Tags zur Verfügung, mit deren Hilfe sich die einzelnen URL-Einträge spezifizieren lassen. Inwieweit diese optionalen Tags allerdings auch unterstützt werden, hängt von der jeweiligen Suchmaschine ab. Der Google-Crawler greift bei der Indexierung beispielsweise in erster Linie auf <lastmod>-Auszeichnungen zurück, während er die beiden anderen Attribute weitestgehend ignoriert bzw. nur minimal in den Crawling-Prozess einfließen lässt.
sitemap.xml: Optionale Tags | |
<lastmod>, </lastmod> | Via <lastmod>-Tag kann das Datum (W3C-Format) der letzten Änderung einer Seite angegeben werden. Das Tag ist dabei unabhängig vom „if modified since“-Header, den der Webserver im Rahmen einer HTTP-304-Antwort zurückgeben kann. |
<changefreq>, </changefreq> | Das <changefreq>-Tag liefert dem Crawler eine allgemeine Information darüber, wie oft eine Seite voraussichtlich aktualisiert wird (stündlich, täglich, monatlich etc.). Dokumente, die sich bei jedem Zugriff verändern, werden durch den Wert „always“ gekennzeichnet, archivierte URLs durch „never“. |
<priority>, </priority> | Mit diesem Tag lässt sich die Priorität einer URL innerhalb des gesamten Webprojekts auf einer Skala von 0,0 bis 1,0 ausdrücken (Standardpriorität: 0,5). So lassen sich Crawler auf Seiten aufmerksam machen, deren Indexierung besonders wichtig ist. |
Da eine XML-Sitemap-Datei maximal 50.000 URLs enthalten und nicht größer als 50 MB sein darf, kann die URL-Sammlung größerer Webprojekte auch auf mehrere Dokumente verteilt werden. In diesem Fall sollte jedes Sitemap-Dokument aber in einer zusätzlichen Indexdatei aufgeführt werden, deren Aufbau sich prinzipiell nicht von dem der Sitemap-Dateien unterscheidet: Es gilt lediglich, die Tags <sitemapindex> und <sitemap> anstelle der Tags <urlset> und <url> zu verwenden.
Es ist möglich, Sitemap-Dateien zu komprimieren (beispielsweise mit gzip) – allerdings nur, um den Bandbreitenbedarf zu verringern. Die maximale Größe einer XML-Sitemap lässt sich auf diese Weise nicht erhöhen, da die Begrenzung immer für die entpackte Version der Datei gilt.
XML-Sitemap-Beispiel
Der Aufbau einer XML-Sitemap lässt sich am einfachsten durch ein konkretes Beispiel nachvollziehen:
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>http://one-test.website/</loc>
<lastmod>2018-01-01</lastmod>
<changefreq>monthly</changefreq>
<priority>1.0</priority>
</url>
<url>
<loc>http://one-test.website/page1/</loc>
<lastmod>2018-03-05</lastmod>
<changefreq>weekly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>http://one-test.website/page2/</loc>
<lastmod>2018-03-08</lastmod>
<changefreq>weekly</changefreq>
<priority>0.3</priority>
</url>
</urlset>
Die Beispiel-XML-Sitemap führt in diesem Fall zum einen die Haupt-URL one-test.website, zum anderen die URLs zweier Unterseiten (page1 und page2) auf. Suchmaschinen-Crawler können dem Dokument entnehmen, dass die Hauptseite vom Webmaster mit der höchsten Priorität versehen wurde und etwa monatlich Veränderungen erfährt. Die letzte Anpassung wurde am 1.1.2018 vorgenommen. Die Seite page1 hat den Standard-Prioritätswert (0,5), wird im Gegensatz zur Hauptseite aber schätzungsweise wöchentlich angepasst, wobei die letzte Modifizierung am 5.3.2018 stattgefunden hat. Sofern der Crawler mit dem Sitemap-Priority-Attribut arbeitet, weiß er, dass er page2 bei der Indexierung am wenigsten Aufmerksamkeit widmen muss (<priority>-Wert: 0,3). Die Unterseite wird aber ebenfalls wöchentlich modifiziert (zuletzt am 8.3.2018).
XML-Sitemap erstellen und einreichen – so funktioniert’s
Angesichts des riesigen Aufwands, der mit einer manuellen Erstellung von XML-Sitemaps verbunden wäre, ist der Griff zu Plug-ins oder Onlinetools in jedem Fall die richtige Entscheidung – sofern man diese korrekt verwendet. Zwar können auch ohne spezifische Konfigurationen passable XML-Sitemaps erzeugt werden, doch erst durch die passenden, individuellen Einstellungen erhalten die generierten Strukturverzeichnisse auch die gewünschte Form. Exemplarisch stellen wir die Möglichkeiten vor, die der Online-Generator von XML-Sitemaps.com sowie das WordPress-Plug-in Google XML Sitemaps bei der Erstellung und Einbindung von XML-Sitemaps bieten.
So generieren Sie XML-Sitemaps mit dem Online-Generator von XML-Sitemaps.com
Der Online-Generator von XML-Sitemaps.com bietet Nutzern seit 2005 eine bequeme Lösung zur Kreation eigener XML-Sitemaps. Für Webprojekte mit bis zu 500 Unterseiten ist der Webservice kostenlos – Sitemaps für größere Projekte können nach Abschluss eines kostenpflichtigen Pro-Abonnements ebenfalls erstellt werden. Die Vorgehensweise ist dabei denkbar einfach: Nachdem Sie die Webanwendung aufgerufen haben, fügen Sie die URL Ihrer Website in die dafür vorgesehene Adresszeile ein: Über die Schaltfläche „More options“ legen Sie im Anschluss fest, ob bzw. inwieweit die Einträge der Sitemap via <lastmod>-, <priority>- oder <changefreq>-Attribut spezifiziert werden sollen. Erstere können Sie entweder an- oder ausschalten, für letzteres stellen Sie die gewünschte Aktualisierungsfrequenz (stündlich, täglich, wöchentlich etc.) ein, wenn Sie von dieser Auszeichnungsoption Gebrauch machen wollen. Andernfalls behalten Sie einfach die Standardeinstellung „Do not specify“ (dt. „nicht angeben“).
Mit einem Klick auf „START“ starten Sie den Generierungsprozess, dessen Dauer von der Größe Ihres Webprojekts abhängt. Ist der Vorgang beendet, können Sie sich das Ergebnis unter „VIEW SITEMAP DETAILS“ -> „VIEW FULL XML SITEMAP“ anzeigen lassen.
Über den Download-Button können Sie die erzeugte XML-Sitemap-Datei nun herunterladen und anschließend in das Root-Verzeichnis Ihrer Website hochladen. Um nun beispielsweise den Google-Crawler über die Datei zu unterrichten, reichen Sie die Datei einfach in der Google Search Console ein (setzt ein Google und den Eintrag der Website als Property voraus). Alternativ können Sie an einer beliebigen Stelle in der robots.txt-Datei den Pfad angeben, an dem die Sitemap zu finden ist:
Sitemap: http://one-test.website/sitemap.xml
Google XML Sitemaps: So erstellen Sie XML-Sitemaps mit dem WordPress-Plug-in
Seit über einem Jahrzehnt macht das von Arne Brachhold entwickelte WordPress-Plug-in Google XML Sitemaps die Kreation von XML-Sitemaps für das eigene Projekt zum Kinderspiel. Um das beliebte Plug-in (über 2 Millionen aktive Installationen weltweit) für Ihre WordPress-Website zu nutzen, installieren Sie es zunächst über das Plug-in-Center des Content-Management-Systems. Wählen Sie hierfür den Menüpunkt „Plugins“ und anschließend „Installieren“ aus und geben Sie „Google XML Sitemaps“ in das Suchfeld ein. Durch einen Klick auf „Jetzt installieren“ starten Sie den Installationsprozess der Erweiterung, die gleich an erster Stelle der präsentierten Resultate erscheinen sollte:
Sie können Google XML Sitemaps auch manuell herunterladen und in das Plug-in-Verzeichnis Ihrer WordPress-Installation legen. Aktivieren Sie die Erweiterung im Anschluss, können Sie diese direkt in WordPress über den Punkt „XML-Sitemap“ im Menü „Einstellungen“ aufrufen. Im Vergleich zu XML-Sitemaps.com steht dabei eine deutlich größere Zahl an Konfigurationsmöglichkeiten in den folgenden sieben Bereichen zur Verfügung:
- Allgemeine Einstellungen: Hier legen Sie die grundsätzlichen Einstellungen fest und bestimmen beispielsweise, ob Google und Bing automatisch über Änderungen informiert werden sollen oder ob die Sitemap automatisch komprimiert werden soll.
- Additional Pages: Unter dieser Rubrik können Sie Dateien oder URLs hinzufügen, die nicht zum WordPress-Projekt gehören, aber über die gleiche Domain laufen.
- Priorität der Beiträge: Anpassungen in diesem Menü sind insbesondere für Blogs und News-Portale von Interesse. Wenn Sie in der Sitemap mit dem <priority>-Tag arbeiten, definieren Sie an dieser Stelle, ob und wie das Plug-in die Priorität eines Beitrags kalkulieren soll.
- Inhalt der Sitemap: In diesem Menü wählen Sie die Kategorien von Seiten aus, die in der XML-Sitemap enthalten sein sollen (z. B. Startseite, statische Seiten, Archivseiten etc.).
- Excluded Items: Wenn Sie Kategorien oder einzelne Posts von der Indexierung ausschließen wollen, können Sie dies an dieser Stelle tun.
- Change Frequencies: Google XML Sitemaps bietet die Möglichkeit, Voreinstellungen für das <changefreq>-Tag zu machen. Die Aktualisierungsfrequenz lässt sich sogar separat für die verschiedenen Seitentypen festlegen.
- Prioritäten: Hierunter treffen Sie die gleichen Einstellungen für das <priority>-Attribut.