Mehrere Sitemaps für eine schnellere Indexierung
Die XML-Sitemap ist der Standard, wenn es darum geht das Crawling der eigenen Seite zu steuern. Allerdings kann es bei sehr großen und sich schnell verändernden Seiten sinnvoll sein, mehrere Sitemaps anzulegen. Solltest Du dies in Erwägung ziehen, stellt sich für Dich die Frage, welche URL packe ich wo rein. Suchst Du Informationen zur Erstellung einer Sitemap, dann bist Du hier richtig. Wie Du die unterschiedlichen Sitemaps struktierst, um Dein Crawling zu optimieren, erfährst Du in diesem Artikel.
Inhalt des Artikels:
- Struktur bei mehreren Sitemaps
- Image-Sitemap
- Video-Sitemap
- News-Sitemap
- HREFLANG-Sitemap
- Indexierung beschleunigen
- Index-Sitemap
- Deindexierung beschleunigen
- 400er-Sitemaps
- Re-Direct Beschleuniger
- .txt-Dateien & RSS- /Atom-Feeds als Sitemap
Die Struktur bei mehreren Sitemaps festlegen
Orientierung an Seitentypen
Eine der einfachsten Logiken ist die Orientierung der Sitemaps an Seitentypen. Typische Seitentypen können sein:
- Produktseiten
- Kategorieseiten
- Indexierbare Facettierungen
- Hilfe- und Service-Seiten
- Themenseiten
- u.a.
Die jeweilige Sitemap enthält dabei alle entsprechenden Inhalte. Grundsätzlich kannst Du Dich dabei grob an den auf der Domain verwendeten Templates orientieren. Diese Sitemap-Logik hilft dabei zu erkennen, bei welchen Seitentypen Google Indexierungsprobleme hat.
Orientierung an Ordnerstruktur
Eine weitere Standard-Logik ist die Orientierung an der Ordnerstruktur. Für jeden Folder/Unterordner wird dabei eine eigene Sitemap angelegt, die alle Inhalte dieses Ordners enthält. Häufig ist diese Logik redundant zur Orientierung an Seitentypen, sie muss es aber nicht sein. Sind meine Inhalte etwa klar in Ordner getrennt (beispielsweise: /Damenmode/, /Herrenmode/), dann kann diese Orientierung schnell Auskunft darüber geben, ob in beiden Seitenbereichen die Indexierung funktioniert.
Orientierung an Medientypen
Für Bilder und Videos gibt es eigene XML-Sitemap-Typen. Es empfiehlt sich dafür jeweils zusätzliche Sitemaps anzulegen, die nur Inhalte enthalten, auf denen die entsprechenden rankingrelevanten Medientypen eingebunden sind. Orientieren sich diese Sitemaps zusätzlich an der logischen Struktur der Seite (Seitentypen, Ordnerstruktur), kannst Du schnell erkennen, ob es mit bestimmten Bildern, Bildertypen oder Bildereinbindungen auf bestimmten Seiten Probleme gibt.
Weitere Sitemap-Typen können in einer Sitemap einfach über das Referenzieren des entsprechenden Namespaces im
- Images: xmlns:image=”http://www.google.com/schemas/sitemap-image/1.1“
- Videos: xmlns:video=”http://www.google.com/schemas/sitemap-video/1.1“
- Feature-Phones: xmlns:mobile=”http://www.google.com/schemas/sitemap-mobile/1.0“
- Hreflang-Sitemaps: xmlns:xhtml=”http://www.w3.org/1999/xhtml“
Dazu kommt noch die News-Sitemap, die allerdings ein wenig anders strukturiert ist: xmlns:news=”http://www.google.com/schemas/sitemap-news/0.9“
Bilder-Sitemap oder Image-Sitemap
Ist der Namespace für Bilder im urlset-Tag gesetzt, dann steh einem die Image-Property mit den entsprechenden Tags innerhalb eines <url>
-Elements zur Verfügung:
<url>
<loc>http://example.com/url1.html</loc>
<lastmod>2042-01-01</lastmod>
<image:image>
<image:loc>http://example.com/image.png</image:loc>
<image:caption>Toller Untertitel für ein fantastisches Beispielbild.</image:caption>
<image:geo_location>Hamburg, Germany</image:geo_location>
<image:title>Hurra Bild-Title</image:title>
<image:license>http://creativecommons.org/licenses/by/4.0/</image:license>
</image:image>
<image:image>
<image:loc>http://example.com/image2.png</image:loc>
</image:image>
</url>
Schauen wir uns die Attribute einmal näher an:
<image:loc>
: Die URL des Bildes, logischerweise Pflichtattribut<image:title>
: Optionaler Bild-Title, sollte angegeben werden, kann beispielsweise aus dem Alt-Attribut entliehen werden<image:caption>
: Optionale Bildunterschrift, sollte angegeben werden, kann entfallen, wenn identisch mit Title<image:license>
: Ein Link zur Bildlizenz (optional)<image:geo\_location>
: Eine Location-Angabe, interessanterweise sind hier keine Koordinaten, sondern Klarnamen des Ortes + Land gefragt (optional)
Googles Hinweise zu Bilder-Sitemaps
Video-Sitemap
Ist der Namespace für Videos im <urlset>
-Tag gesetzt ("xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"
), dann steht einem die Video-Property mit den entsprechenden Tags innerhalb eines <url>
-Elements zur Verfügung.:
<url>
<loc>http://example.com/url1.html</loc>
<lastmod>2042-01-01</lastmod>
<video:video>
<video:thumbnail_loc>http://example.com/videothumbnail.jpg</video:thumbnail_loc>
<video:title>Ein toller Videotitel</video:title>
<video:description>Eine ausführlichere Beschreibung des Video-Inhalts</video:description>
<video:content_loc>http://example.com/video.flv</video:content_loc>
<video:player_loc allow_embed="yes" autoplay="ap=1">http://example.com/videoplayer.js</video:player_loc>
<video:duration>600</video:duration>
<video:expiration_date>2042-01-01T00:00:01+01:00</video:expiration_date>
<video:rating>4.9</video:rating>
<video:view_count>42</video:view_count>
<video:publication_date>2016-01-01T09:30:00+01:00</video:publication_date>
<video:family_friendly>yes</video:family_friendly>
<video:restriction relationship="allow">DE AT CH</video:restriction>
<video:gallery_loc title="Gallery Best of Videos">http://example.com/video/best_of</video:gallery_loc>
<video:price currency="EUR">4.99</video:price>
<video:requires_subscription>yes</video:requires_subscription>
<video:uploader info="http://example.com/users/matt">Matt Cutts</video:uploader>
<video:live>no</video:live>
</video:video>
</url>
Pflichtangaben sind dabei:
<video:thumbnail_loc>
: Thumbnail des Videos. Die Größe muss zwischen 160x90px und 1920x1080px liegen. Idealerweise .jpg- oder .png-Format<video:title>
: Titel des Videos. Keywords sollten hier enthalten sein. Maximal 100 Zeichen. Achtung: HTML-Entities müssen in einem CDATA-Block stehen.<video:description>
: Eine ausführlichere Description in maximal 2048 Zeichen. Auch hier sollte der Content in einem CDATA-Block umfasst sein, falls HTML-Entities enthalten sind.- Angabe des Videos selbst. Mindestens eine der Angabe muss erfolgen, beide sind möglich:
<video:content_loc>
: URL zu einer Videodatei. Vorteil: Google kann das Video besser verstehen, Nachteil: Google generiert möglicherweise ein eigenes Vorschaubild<video:player_loc>
: Ermöglicht die Angabe einer URL eines Videoplayers mit einem Parameter zum konkreten Video. Hierbei kann mit dem Parameter embed definiert werden, ob das Video in den Suchergebnissen abspielbar sein soll.
Die optionalen Parameter sind ziemlich selbsterklärend. Letztlich gilt: Google hat Probleme Videos vernünftig einzuordnen. Googles Hinweise zu Video-Sitemaps
Sonderfall Google News-Sitemap
Für die News-Sitemap gelten ein paar besondere Regeln. Grundsätzlich ist die Sitemap nur für Seiten relevant, die eine realistische Chance haben auf Google News mitmachen zu können. Dann allerdings ist sie Pflicht. Die News-Sitemap sollte nicht mit anderen Sitemap-Formaten zusammengeworfen werden. Sie sollte immer aktuell sein. Zusätzlich darf die Sitemap nur News-Artikeln enthalten. Diese dürfen nicht älter als 48 Stunden sein. Insgesamt dürfen nicht mehr als 1.000 Artikel in einer News-Sitemap stehen. Gehörst Du zu den wenigen Publishern, die in 48 Stunden mehr als 1.000 Artikel veröffentlichen, dann solltest Du eine Index-Sitemap nutzen. Der Namespace für Google News Sitemaps ist: xmlns:news="http://www.google.com/schemas/sitemap-news/0.9" Unterhalb des urlset folgt die News-Sitemap unserem bekannten Aufbau der Referenzierung einer URL mit dem -Tag unterhalb des -Tags:
<url>
<loc>http://example.com/article123.html</loc>
<news:news>
<news:publication>
<news:name>Publisher-Name</news:name>
<news:language>de</news:language>
</news:publication>
<news:publication_date>2042-01-01</news:publication_date>
<news:title>Wingmen veröffentlicht Wissensartikel zu XML-Sitemaps</news:title>
</news:news>
</url>
Hier sind alle Pflichtattribute angegeben. Grundsätzlich empfiehlt es sich gerade bei einer News-Sitemap natürlich ein exaktes Veröffentlichungsdatum anzugeben und nicht nur einen Tag, wie hier im Beispiel. Optionale weitere Attribute:
: Hier sollen Genres angegeben werden, sofern eine der Klassifikationen zutrifft. Wir empfehlen grundsätzlich vorsichtig mit der Einordnung zu sein und diese nur zu verwenden, wenn sich eine Nachricht eindeutig klassifizieren lässt. Mögliche Klassifizierungen: PressRelease, Satire, Blog, OpEd, Opinion, UserGenerated. Wobei die ersten drei Klassifizierungen auf Google News sichtbar als solche gekennzeichnet werden können. - <news:stock_tickers>: Angabe von zur Meldung verwandten Börsen-Symbolen. Verwandt heißt: Der Artikel sollte sich vor allem mit diesen Aktienkursen / Erwartungen der dahinter stehenden Unternehmen beschäftigen. Eine bloße Erwähnung eines Unternehmens in einem Artikel reicht noch nicht aus, diesen Artikel entsprechend zu vertaggen.
Orientierung an Sprachen und Ländern
Sind verschiedene Sprachen auf einer Seite vorhanden, empfiehlt es sich für jede Sprache einen eigenen Sitemap-Baum anzulegen. Dies ist nicht zu verwechseln mit einer HREFLANG-Sitemap. Bei dieser Struktur geht es nicht darum die Sprachen untereinander zu verknüpfen, sondern festzustellen, ob die Inhalte in /de/ ebenso gut indexiert werden, wie diejenigen in /en/.
Hreflang-Sitemap / Sitemap zur Sprachauszeichnung
Wichtig bei der Nutzung von HREFLANG-Sitemaps ist vor allem die korrekte gegenseitige Referenzierung der Sprach-/Land-Domains einer mehrsprachigen Seite. Da dies ein besonders komplexes Thema ist, haben wir die Hreflang-Sitemap-Informationen im Hreflang-Artikel aufbereitet. Generell könnten HREFLANG-Sitemap und andere Formate gemischt werden. Zur besseren Fehleridentifikation und aufgrund der besonderen Komplexität von HREFLANG-Sitemaps empfehlen wir das aber nicht.
Indexierung zusätzlich beschleunigen, mit der Index-Sitemap
Für neue Inhalte sollte es eine Extra-Sitemap-Struktur geben, die die neuesten 5-10% der Inhalte in einer Extra-Sitemap vorhält. Diese Sitemap dient Suchmaschinen als Anlaufpunkt für die neuesten Inhalte. Diese Sitemap sollte besonders aktuell gehalten werden. Auch für Content-Publisher kann dies zusätzlich zu einer News-Sitemap interessant sein, um beispielsweise neue Themenseiten, Kategorien oder ähnliche neue Seiten, die aber keine Artikel sind schnell indexieren zu lassen. Auch hier kann natürlich bei entsprechender Menge an Änderungen wieder zwischen Seitentypen unterschieden werden. In aller Regel ist dies aber nicht erforderlich. Häufig bietet es sich auch an die Grenze für die Aufnahme von URLs nicht anhand von Prozent an allen Dokumenten fest zu machen, sondern am Veröffentlichungszeitpunkt. Mit einer Regel “Alle Dokumente, die in den letzten 7 Tagen hinzugefügt wurden”, kannst Du schnell sehen, ob die entsprechenden Inhalte auch zeitnah indexiert werden, beziehungsweise wie hoch der Anteil noch nicht indexierter Dokumente ist.
Was ist eine Index-Sitemap?
Eine Index-Sitemap dient dazu weitere Sitemaps zu referenzieren und so zu verhindern, dass jede Sitemap einzeln in der Robots.txt oder in Webmaster Tools der Suchmaschinen referenziert werden muss. Der Aufbau ist relativ einfach und auch der Aufbau die Anzahl der Tags ist überschaubar: Wir beginnen wieder mit der XML-Deklaration
Deklaration
<?xml version="1.0" encoding="UTF-8"?>
Wir haben
<sitemapindex>
(Achtung: nicht
<urlset>
!) als Root-Knoten und binden das Sitemap-Schema ein:
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
Dann werden die einzelnen Sitemaps referenziert:
<sitemap>
<loc>http://www.example.com/sitemap1.xml.gz</loc>
<lastmod>2004-10-01T18:23:17+00:00</lastmod>
</sitemap>
<sitemap>
<loc>http://www.example.com/sitemap2.xml.gz</loc>
<lastmod>2005-01-01</lastmod>
</sitemap>
Und am Ende der Sitemap-Index geschlossen:
</sitemapindex>
Das
<lastmod>
-Tag ist optional, es empfiehlt sich aber dies korrekt zu setzen. Dies wird umso wichtiger, je mehr Sitemaps Du hast. Die Restriktionen für die Index-Sitemap sind die gleiche, wie für andere Sitemaps auch: Nicht mehr als 50.000 URLs, nicht mehr als 50MB entpackt, kann aber per .gz komprimiert übertragen werden, UTF-8-Kodierung und nur absolute URLs referenzieren. Sollten mehr als 50.000 URLs angegeben werden müssen bietet sich an in der ersten Indexsitemap, die in der Robots.txt angegeben wird alle weiteren Index-Sitemaps und nur diese zu referenzieren. Auch für Index-Sitemaps gelten die Cross-Submit-Regeln. Das heißt: Es können URLs auf anderen Domains referenziert werden, wenn deren Robots.txt per Sitemap:-Angabe auf die Sitemap-hostende Domain verweisen. Sitemap-Details auf sitemaps.org. Sitemap-Hinweise von Google.
Der Recent-Changes-Beschleuniger
Liste mit den URLs, die in den letzten 30 Tagen geändert worden sind und durch Google aktualisiert werden sollten.
Sitemaps zur Beschleunigung der Deindexierung
Sitemaps können nicht nur zur beschleunigten Indexierung oder Verarbeitung von Content-Modifikationen genutzt werden, sondern auch um nicht mehr verfügbare URLs schneller aus dem Google-Index zu bekommen. Wichtig dabei ist, dass diese Sitemaps:
- nicht mit Sitemaps zur Indexierung gemischt werden, um die Qualität der Index-Sitemaps hoch zu halten.
- Links nicht für immer enthalten sind, sondern entfernt werden, wenn Google die neuen Angaben verarbeitet hat. Google empfiehlt beispielsweise Sitemaps, die Redirects nach einem Relaunch listen maximal sechs Monate bestehen zu lassen. https://www.youtube.com/watch?v=BFmyBoew728#t=1925
Der De-Indexierungsbeschleuniger und Überwacher
Es kommt immer mal wieder vor, dass Inhalte von indexierbar auf nicht indexierbar geändert werden (robots index auf robots noindex). Für diesen Fall bietet sich eine Sitemap an, die alle nicht mehr indexierbaren Dokumente der letzten 30 Tage vorhält, so dass Du überwachen kannst, ob diese auch wirklich deindexiert werden. Wenn bestimmte Seitentypen oder Strukturen zu einem Zeitpunkt komplett auf noindex geändert werden, dann ist hierfür eine einfache .txt-Sitemap ausreichend. Wenn in die Sitemap Dokumente zu unterschiedlichen Zeitpunkten aufgenommen werden, dann sollte eine XML-Sitemap mit
404-er/410-er Sitemap
Seiten, die von HTTP-Status 200 auf 404 oder 410 wechseln, weil die Inhalte gelöscht worden sind, können natürlich grundsätzlich auch im “De-Indexierungsbeschleuniger” aufgenommen werden. In manchen Fällen (insbesondere bei größeren Mengen) empfiehlt es sich aber diese URLs in einer Extra-Sitemap zu referenzieren.
Der Redirect-Beschleuniger
Zur Beschleunigung der Verarbeitung von Redirects empfiehlt es sich Redirect-Sitemaps einzurichten. Damit lässt sich nicht nur die Liste der eingerichteten Redirects strukturiert an Google übergeben, sondern in der Search Console auch überwachen, wie viele der weitergeleiteten URLs noch im Google Index zu finden sind. Für Redirect-Sitemaps im Rahmen größerer URL-Migrationen bietet sich oft der Einsatz von TXT-Sitemaps statt XML-Sitemaps an, da sie einmalig erstellt und häufig nur selten aktualisiert werden müssen. Da bei Redirect-Sitemaps im Zusammenhang mit Domain-, Subdomain- oder Protokoll-Migrationen es häufig unhandlich ist die Sitemap unter dem alten Host laufen zu lassen, bietet es sich an die Möglichkeit von Cross-Submits zu nutzen.
.txt-Dateien als Sitemap
Grundsätzlich gibt es auch die Möglichkeit einfache TXT-Dateien als Sitemap zu verwenden. Das bietet sich immer dann an, wenn keinerlei Zusatzinformationen zu URLs mitgegeben werden sollen. Wird beispielsweise das Datum als Priorisierungshilfe für Google nicht benötigt, oder Du vertraust auf die Qualität Googles das richtige Aktualisierungsintervall herauszufinden, dann kannst Du TXT-Dateien gut verwenden.
Wann sind txt-Dateien als Sitemap geeignet?
Gerade für bestimmte (einmalige) Anwendungsfälle bieten sich TXT-Dateien an:
- Die Deindexierungssitemap
- [Die Weiterleitungssitemap (#der-redirect-beschleuniger)
- Der Indexierungsbeschleuniger
Die TXT-Datei muss dabei als UTF-8 kodiert sein und ausschließlich URLs enthalten (eine pro Zeile). URLs müssen dabei (wie bei allen Sitemaps) vollqualifiziert inklusive Protokoll, Subdomain, Domain und Topleveldomain, sowie Pfad und eventuell Parametern sein. TXT-Sitemaps werden auch von Bing akzeptiert.
RSS-Feed / Atom-Feed: Keine echte Alternative für Google
Theoretisch bietet Google noch die Möglichkeit einen RSS-Feed als Sitemap anzugeben, oder Google Sites entsprechend zu verwenden. Offengestanden haben wir das aber noch nie in ernsthaften Projekten gesehen und auch noch keinen Anwendungsfall dafür gehabt. Letztlich funktionieren die RSS-Feeds ähnlich wie die angesprochenen Aktualisierungs-Sitemaps. Sie dienen also weniger dazu die Vollständigkeit sicher zu stellen, als die Aktualität durch Aufnahme neuer oder aktualisierter Artikel. Da RSS-/Atom-Feeds auch User hilfreich sind, werdet Ihr sie bei entsprechendem Output aber ohnehin im Einsatz haben und auch sinnvoll segmentieren. Sobald Ihr die RSS-Feeds im HTML referenziert ist Google in der Lage die zu crawlen. Häufig übernimmt Google die dann direkt. Zur Sicherheit könnt Ihr aber auch RSS-Feeds in der Search Console angeben. 2014 hat Google die Verwendung einer Kombination von RSS/Atom und XML empfohlen. Allerdings ist hier auch noch die Rede von Pubsubhubbub. Dieses Protokoll wurde zwischenzeitlich modifiziert und in Websub umbenannt. Der von Google gehostete Hub scheint diese Änderungen allerdings noch nicht umgesetzt zu haben. Theoretisch ermöglicht Websub nicht nur das passive Bereitstellen eines Feeds, sondern ermöglicht Dir auch aktiv Änderungen am Feed direkt an Google zu pushen.