Magento SEO Multistore Sitemap.xml und Robots.txt für mehrere Shops

Mit dem Shopsystem Magento kann man schnell und problemlos viele einzelne und auch unabhängige Shops erstellen, die alle anders aussehen, andere Produkte anbieten, andere Preise haben und vor allem auch unter eigenen Domains erreichbar sind.

Wie sieht es aber mit Suchmaschinen Optimierung für Google, Bing etc. aus, wenn man mehrere Shops hat? Da nur ein gemeinsames Dateisystem verwendet wird, muss man hier ein bisschen tricksen.

  1. Jeweils eine sitemap.xml pro Shop erstellen:Bild
    Magento lässt standardmäßig nur die Erstellung von DER sitemap.xml. Es gibt auch keine (standard) Möglichkeit diese umzubenennen (mehr Infos HIER). Sicher gibt es hier Extensions für, die das schnell und komfortabel erledigen, es geht aber auch anders.
    Man kann die jeweilige sitemap.xml aber in verschiedene Ordner legen.
    Somit legen wir im Magento Root Verzeichnis ein Verzeichnis pro Shop an Beispiel:
    – sitemap-shop1
    – sitemap-shop2
    – sitemap-shop3
    Dann gehen wir im Magento Backend auf Katalog > Google Sitemap.
    Dort klicken wir auf “Sitemap hinzufügen”, geben als Namen sitemap.xml ein, geben dann den Pfad ein und suchen dann den entsprechenden Storeview aus. Dann auf “Speichern & Erstellen” klicken.
    Die Sitemap wurde nun erstellt und sollte -besser nachschauen- im richtigen Ordner liegen.
  2. Konfigurieren, dass die Sitemaps automatisch aktualisiert werden:
    Um Magento die Sitemaps automatisch aktualisieren zu lassen (muss der Magento Cron serverseitig aktiviert sein!), man man unter System > Konfiguration > Katalog / Google Sitemap gehen und dort hinterlegen dass die Sitemap z.B. täglich erstellt wird.
  3. Einstellen, dass Google und andere Bots auch die richtige Sitemap finden = die passende robots.txt erstellen
    Nun ein generelles Problem(chen). Normalerweise erstellt man auch nur eine robots.txt für eine Seite. Google und Co. erwarten also diese robots.txt (auch wenn sie sie nicht unbedingt brauchen würden). Für einen Multishop bräuchten wir aber streng genommen mehrere robots.txt, die u.a. mitteilen wo die Sitemap liegt. Daher erstellen wir z.B.
    – robots-shop1.txt
    – robots-shop2.txt
    – robots-shop3.txt
    In diesen Dateien hinterlegen wir auf der einen Seite z.B. einen Standard Teil, um die Suchmaschinen von bestimmten Seiten fernzuhalten: 

    User-agent: *
    Disallow: /index.php/
    Disallow: /*?
    Disallow: /*.js$
    Disallow: /*.css$
    Disallow: /*.php$
    Disallow: /admin/
    Disallow: /app/
    Disallow: /catalog/
    Disallow: /catalogsearch/
    Disallow: /checkout/
    Disallow: /customer/
    Disallow: /downloader/
    Disallow: /js/
    Disallow: /lib/
    Disallow: /media/
    Disallow: /newsletter/
    Disallow: /pkginfo/
    Disallow: /report/
    Disallow: /review/
    Disallow: /skin/
    Disallow: /var/
    Disallow: /wishlist/

    und fügen als letzte Zeile

    Sitemap: http://www.shop1.de/shop1/sitemap.xml

    hinzu. Dies machen wir für alle Shops und ändern jeweils unten die Domain, die den Ort der jeweiligen sitemap.xml angibt. So dass wir also nachher drei robots Dateien haben, die alle im Magento Root Verzeichnis liegen.
    Nun fehlt noch ein letzter Schritt.

  4. Über die .htacces definieren welche robots für welche Domain zuständig ist:
    Hierfür öffnen wir die .htaccess im Rootverzeichnis von Magent und fügen am Schluss noch folgende Zeilen hinzu 

    ## Welche robots für welche Domain ##
    RewriteCond %{HTTP_HOST} ^.*?shop1\.de$ [NC]
    RewriteRule ^robots\.txt$ robots.shop1.txt
    RewriteCond %{HTTP_HOST} ^.*?shop2\.de$ [NC]
    RewriteRule ^robots\.txt$ robots.shop2.txt
    RewriteCond %{HTTP_HOST} ^.*?shop3\.de$ [NC]
    RewriteRule ^robots\.txt$ robots.shop3.txt

     

Damit sollte nun alles klappen. Die Bots kommen auf die Seite, sehen über die .htacces, dass sie sich an die jeweilige robots halten sollen, diese verweist auf die sitemaps in den Unterverzeichnissen und somit wird schön indiziert und den jeweiligen Shops und Domains des Multistores zugerechnet.

Genutzt in Magento Version 1.8.1.0 Kommentare? Ergänzungen? Hinweise? Gerne!

Published by Covos

Seit 2009 arbeite ich nun intensiv mit Magento. Begonnen habe ich mit der Erstellung und dem Betrieb von B2C-Shops. Ausgeweitet wurde dies durch meine Tätigkeit im Logistik-Sektor. Hieraus entstanden erste spezialisierte B2E-Systeme. Heute arbeite ich tag-täglich mit spannenden B2C-, B2B- und B2E-Projekten und berichte in diesem Blog über Herausforderungen und gebe Insider-Tipps.

2 comments on “Magento SEO Multistore Sitemap.xml und Robots.txt für mehrere Shops”

  1. Google rät übrigens davon ab JS und CSS auszusperren.
    (vgl. http://googlewebmastercentral.blogspot.de/2014/05/rendering-pages-with-fetch-as-google.html)

    Weiterhin lässt sich die Zuordnung der Sitemaps zu einem der Multistores sauber über die .htaccess abbilden, damit immer die passende /sitemap.xml ausgeliefert wird.
    (vgl. http://oldwildissue.wordpress.com/2012/02/27/magento-google-sitemap-generation-for-multistore-installation/)
    Leider muss man dann auch unterschiedliche robots.txt ausliefern, da Sitemap: eine “volle” URL benötigt.
    (vgl. http://www.sitemaps.org/protocol.html#submit_robots)

    Aber der Aufwand lohnt sich wohl, im alle /sitemap.xml Anfragen abzufangen und sich zusätzliche Extensions zu sparen.

    Gruß

Leave a Reply

Your email address will not be published. Required fields are marked *