Nachdem ich in meinem letzten Newsletterartikel schon einmal das Handling der Statuscodes für die Collection-Pages in Shopify unter die Lupe genommen hatte, möchte ich in diesem Artikel auf die erzeugten XML-Sitemaps in Shopify eingehen.
Optimalerweise legen wir Sitemaps als statische Dateien in das Dateisystem des Servers, so dass der Abruf dieser Sitemaps so wenig Server-Ressourcen und Zeit benötigt wie möglich. Doch es gibt immer noch Systeme, die dies nicht beachten. Eigentlich gar kein Problem, wenn die Server-Ressourcen ausreichen und die Sitemaps schnell genug ausgeliefert werden. Zusätzlich können sich häufig ändernde Parameter in den URLs der Sitemaps zu Problemen führen. Wieso? Weil mit jeder Änderung der Parameter im Prinzip eine neue Sitemap erstellt wird, die die Suchmaschinen erst einmal entdecken, auslesen und verarbeiten müssen. Ein Beispiel gefällig?
Ein Shopify-Shop besitzt in der Regel mehrere Sitemap-Dateien für die Produkte, Collections, Seiten und Blogbeiträge. Diese werden in einer Index-Sitemap zusammengefasst.
Beispiel einer solchen Index-Sitemap:\
<sitemapindex xmlns=\"http://www.sitemaps.org/schemas/sitemap/0.9\">
<!-- This is the parent sitemap linking to additional sitemaps for products, collections and pages as shown below. The sitemap can not be edited manually, but is kept up to date in real time. -->
<sitemap><loc>https://meinsh
op.de/sitemap_products_1.xml?from=7333257329998&to=8414812483978</loc>
</sitemap>
<sitemap>
<loc>https://meinshop.de/sitemap_pages_1.xml</loc>
</sitemap>
<sitemap>
<loc>https://meinshop.de/sitemap_collections_1.xml</loc>
</sitemap>
<sitemap>
<loc>https://meinshop.de/sitemap_blogs_1.xml</loc>
</sitemap>
<sitemap>
<loc>https://meinshop.de/en/sitemap_products_1.xml?from=7333257329998&to=8414829483978</loc>
</sitemap>
<sitemap>
<loc>https://meinshop.de/en/sitemap_pages_1.xml</loc>
</sitemap>
<sitemap>
<loc>https://meinshop.de/en/sitemap_collections_1.xml</loc>
</sitemap>
<sitemap>
<loc>https://meinshop.de/en/sitemap_blogs_1.xml</loc>
</sitemap>
</sitemapindex>
Das Problem besteht nun in den Produkt-Sitemaps. Die Parameter in der URL geben an, welche Produkt-URLs jeweils in der Sitemap-Datei enthalten sein sollen. Ändert sich etwas an dem Produktsortiment, so ändern sich auch diese Parameter. Ergo, werden gegenüber den Suchmaschinen neue Sitemap-Dateien erzeugt und die alten verschwinden aus der GSC. Übrigens mit dem gesamten Abdeckungsbericht. Da die neuen Sitemaps noch nicht eingelesen wurden, kann die Erhebung des Abdeckungsberichts etwas dauern. Für sich häufig ändernde Sortimente ist dieses Verhalten natürlich unglücklich. Vor allem, wenn es um eine schnelle und saubere Indexierung der Produkt-Detail-Pages (PDPs) geht.
Eine Lösung kann hier eine Art "Sitemap-Proxy-Hosting" mit einem selbst geschriebenen Prozess sein, der die Sitemaps regelmäßig ausliest und auf einer Subdomain als statische Dateien zur Verfügung stellt und in deren URLs keine Parameter mehr enthalten sind. Ich gebe zu, eine nicht ganz so schöne Lösung. Aber für Shopify-Shops mit großem Sortiment und häufigen Anpassungen eine Lösung, die funktioniert und recht kostengünstig ist.