Shopware SEO

Die Sitemap in Shopware: was drinsteht und was fehlt

Shopware erzeugt seine Sitemap selbst — aus fünf Quellen, in Blöcken zu 100, komprimiert und auf 49.999 URLs je Datei begrenzt. Was das im Alltag bedeutet, steht selten in der Dokumentation.

Pixup MediaVeröffentlicht am 8 Min. Lesezeit

Die Sitemap gehört zu den Dingen, die in Shopware einfach da sind — bis jemand fragt, warum eine bestimmte Seite fehlt. Dann stellt sich heraus, dass niemand genau weiss, was eigentlich hineinkommt.

Dieser Text beantwortet das anhand der Konfiguration und des Quelltextes einer laufenden 6.7.13.1-Installation.

Die fünf Quellen

Shopware speist die Sitemap aus genau fünf URL-Quellen:

QuelleWas sie liefert
HomeUrlProviderdie Startseite je Verkaufskanal
CategoryUrlProviderKategorien
ProductUrlProviderProdukte
LandingPageUrlProviderLandingpages
CustomUrlProviderselbst gepflegte URLs aus der Konfiguration

Das ist die vollständige Liste. Was dort nicht vorkommt, steht nicht in der Sitemap — auch wenn es erreichbar und indexierbar ist.

In der Praxis fällt das bei drei Dingen auf: Erlebniswelten, die nicht als Landingpage angelegt sind; Herstellerseiten; und alles, was eine Erweiterung an eigenen Routen mitbringt. Für den letzten Fall gibt es den CustomUrlProvider — er liest die selbst gepflegten URLs aus der Konfiguration.

Die Zahlen

batchsize: 100
custom_urls: {  }
excluded_urls: {  }
scheduled_task:
    enabled: true

Dazu aus dem Quelltext:

WertBedeutung
batchsize: 100je Durchlauf werden 100 URLs je Quelle geholt
MAX_URLS = 49999ab dieser Zahl beginnt eine neue Sitemap-Datei
sitemap%s-%d.xml.gzDateinamensmuster, komprimiert
scheduled_task.enabled: truedie Erzeugung läuft als geplante Aufgabe

Die Obergrenze von 49.999 liegt bewusst knapp unter den 50.000, die das Sitemap-Protokoll je Datei erlaubt. Bei mehr URLs entstehen mehrere Dateien und ein Index darüber.

Die Blockgrösse ist der interessante Wert. Sie bestimmt, wie viele URLs je Schleifendurchlauf aus der Datenbank geholt werden. Bei grossen Katalogen ist das der erste Hebel, wenn die Erzeugung in eine Zeitüberschreitung läuft: Ein grösserer Block bedeutet weniger Durchläufe, aber mehr Speicher je Durchlauf. Ein kleinerer dreht das um.

Ändern lässt sich der Wert über die Konfiguration:

shopware:
    sitemap:
        batchsize: 250

Ob das hilft, hängt vom Katalog und von der Datenbank ab — es ist ein Wert zum Messen, nicht zum Raten.

Was der Standard bewusst nicht enthält

Zwei Dinge, nach denen regelmässig gesucht wird und die der Kern nicht liefert:

Keine Bild-Einträge. Das Sitemap-Protokoll erlaubt image:image-Angaben je URL. Shopwares Sitemap-Erzeugung kennt sie nicht. Für Shops, die stark über die Bildersuche gefunden werden, ist das eine echte Lücke.

Keine hreflang-Angaben. Das Protokoll erlaubt xhtml:link-Einträge, um Sprachvarianten einer URL in der Sitemap zu benennen. Auch die erzeugt der Kern nicht. hreflang liefert Shopware stattdessen in der Storefront, als Verweise im Kopfbereich der Seite — wie das funktioniert, steht in hreflang in Shopware einrichten.

Für mehrsprachige Shops heisst das: Die Sprachverknüpfung existiert, aber nicht an der Stelle, an der viele sie suchen.

Ausschlüsse

excluded_urls nimmt Muster auf, die nicht in der Sitemap landen sollen. Das ist der richtige Ort für Seiten, die zwar erreichbar sein müssen, aber nicht beworben werden — etwa interne Landingpages oder Kampagnenziele mit begrenzter Laufzeit.

Ein Ausschluss ist kein noindex. Eine URL, die nicht in der Sitemap steht, kann trotzdem gefunden und indexiert werden. Wer eine Seite aus dem Index halten will, braucht ein Robots-Signal — die Sitemap ist ein Vorschlag, keine Sperre.

Wenn eine Seite fehlt

Eine Reihenfolge, die die meisten Fälle in wenigen Minuten klärt:

  1. Gehört der Seitentyp zu den fünf Quellen? Wenn nicht, ist das die Antwort. Landingpage anlegen oder custom_urls ergänzen.
  2. Ist die Seite dem Verkaufskanal zugeordnet, dessen Sitemap Sie ansehen? Jeder Kanal hat seine eigene.
  3. Greift ein Ausschlussmuster? excluded_urls prüfen.
  4. Wann lief die Erzeugung zuletzt? Nach grösseren Katalogänderungen lohnt ein manueller Anstoss statt Warten auf die geplante Aufgabe.
  5. Ist die Sitemap überhaupt erreichbar? Sie liegt komprimiert vor; ein Abruf im Browser zeigt je nach Einstellung nur einen Download.

Erst wenn alle fünf Punkte stimmen und die URL trotzdem fehlt, lohnt der Blick in die Logs.

Wo der Standard an seine Grenzen kommt

Für viele Shops reicht der Standard vollständig. Interessant wird es bei grossen Katalogen, bei starker Bildersuche und bei mehrsprachigen Aufbauten — also genau dort, wo Bild-Einträge und hreflang in der Sitemap fehlen.

Ob sich in einem konkreten Fall der Standard, eine Erweiterung oder eine eigene Lösung lohnt, ist eine Abwägung mit klaren Kriterien. Die haben wir in Sitemap in Shopware: Bordmittel, Plugin oder Eigenbau aufgeschrieben — samt der Frage, wann keine der drei Optionen nötig ist.

Häufige Fragen

Warum ist meine Sitemap eine .gz-Datei?
Shopware schreibt sie komprimiert, nach dem Muster sitemap-<name>-<nummer>.xml.gz. Suchmaschinen kommen damit zurecht; wer sie im Browser ansehen will, muss sie entpacken.
Wie viele URLs passen in eine Sitemap?
Der Kern beginnt bei 49.999 Einträgen eine neue Datei. Das liegt knapp unter der Obergrenze von 50.000, die das Sitemap-Protokoll erlaubt.
Warum fehlen meine CMS-Seiten?
Erlebniswelten sind keine eigene Quelle. In die Sitemap kommen sie nur, wenn sie als Landingpage angelegt sind oder über die selbst gepflegten URLs ergänzt werden.
Wann wird die Sitemap neu erzeugt?
Über eine geplante Aufgabe, die im Standard aktiv ist. Nach grösseren Katalogänderungen lohnt es, die Erzeugung anzustossen statt auf den nächsten Lauf zu warten.
WeiterführendSEO-Agentur