PrestaShop Robots.txt: Was blockieren, was erlauben

406 Aufrufe

Was ist die Robots.txt und warum sie für PrestaShop wichtig ist

Die Datei robots.txt befindet sich im Stammverzeichnis Ihrer PrestaShop-Installation und dient als erster Kommunikationspunkt zwischen Ihrem Shop und Suchmaschinen-Crawlern. Sie teilt Bots wie Googlebot, Bingbot und anderen mit, welche Bereiche Ihrer Website gecrawlt werden dürfen und welche übersprungen werden sollen. Obwohl sie kein Sicherheitsmechanismus ist (sie verhindert keinen Zugriff, sondern gibt nur Empfehlungen an Crawler), ist sie eines der wichtigsten Werkzeuge zur Verwaltung Ihres Crawl-Budgets — die Anzahl der Seiten, die eine Suchmaschine innerhalb eines bestimmten Zeitraums auf Ihrer Website crawlt.

Für PrestaShop-Shops ist dies enorm wichtig. Eine typische PrestaShop-Installation kann Tausende von URL-Varianten durch Filter, Sortieroptionen, Paginierung, Währungsumschaltung und Suchanfragen erzeugen. Wenn dies unkontrolliert bleibt, verschwenden Suchmaschinen-Bots ihr Crawl-Budget für diese wertlosen Seiten, anstatt Ihre tatsächlichen Produkt- und Kategorieseiten zu entdecken und zu indexieren.

Wie PrestaShop seine Robots.txt generiert

PrestaShop enthält einen integrierten robots.txt-Generator, der über das Back Office zugänglich ist. Navigieren Sie zu Shopparameter > Traffic & SEO und scrollen Sie nach unten, wo Sie den Abschnitt "Robots-Datei generieren" finden. Ein Klick auf die Schaltfläche erstellt eine robots.txt-Datei im Stammverzeichnis Ihres Shops.

Die standardmäßig generierte Datei enthält typischerweise Regeln wie diese -

User-agent: *
Disallow: /classes/
Disallow: /config/
Disallow: /download/
Disallow: /mails/
Disallow: /modules/
Disallow: /translations/
Disallow: /tools/
Disallow: /*?orderby=
Disallow: /*?orderway=
Disallow: /*?tag=
Disallow: /*?id_currency=
Disallow: /*?search_query=
Disallow: /*?back=
Disallow: /*?n=
Sitemap: https://ihrshop.com/sitemap.xml

Dies ist zwar ein vernünftiger Ausgangspunkt, aber bei weitem nicht vollständig. Viele kritische URL-Muster, die Crawl-Budget verschwenden, sind nicht enthalten.

Was Sie in PrestaShop blockieren müssen

1. Warenkorb-, Kassen- und Kontoseiten

Diese Seiten sind benutzerspezifisch und bieten keinerlei SEO-Wert. Sie sollten immer blockiert werden -

Disallow: /*?controller=cart
Disallow: /*?controller=order
Disallow: /*?controller=authentication
Disallow: /*?controller=my-account
Disallow: /*?controller=identity
Disallow: /*?controller=addresses
Disallow: /*?controller=address
Disallow: /*?controller=history
Disallow: /*?controller=order-detail
Disallow: /*?controller=password
Disallow: /*?controller=discount
Disallow: /*?controller=order-return
Disallow: /*?controller=order-follow
Disallow: /*?controller=guest-tracking
Disallow: /cart
Disallow: /order
Disallow: /login
Disallow: /my-account
Disallow: /password-recovery

2. Facettierte Navigation und Schichtfilter

Die facettierte Navigation ist der größte Crawl-Budget-Killer für E-Commerce-Shops. Wenn ein Kunde Filter wie Farbe, Größe oder Preisbereich verwendet, generiert PrestaShop eindeutige URLs für jede Kombination. Eine Kategorie mit 5 Farben, 4 Größen und 3 Preisbereichen kann Hunderte von URL-Kombinationen erzeugen — von denen keine in Googles Index sein sollte.

# Filter-Parameter der Schichtnavigation blockieren
Disallow: /*?q=
Disallow: /*&q=
Disallow: /*?selected_filters=
Disallow: /*&selected_filters=
Disallow: /module/ambjolisearch/jolisearch

# Preisfilter-Kombinationen blockieren
Disallow: /*?price=
Disallow: /*&price=

# Attribut- und Merkmalfilter blockieren
Disallow: /*?id_attribute_group=
Disallow: /*&id_attribute_group=
Disallow: /*?id_feature=
Disallow: /*&id_feature=

3. Interne Suchergebnisse

Interne Suchergebnisseiten sind dünn an Inhalt und sollten niemals indexiert werden. Sie erstellen häufig nahezu doppelte Seiten und sind eine bekannte Quelle für Qualitätsprobleme -

Disallow: /*?controller=search
Disallow: /*?s=
Disallow: /*&s=
Disallow: /search
Disallow: /*?search_query=
Disallow: /*&search_query=

4. Paginierungsparameter

Während Kategorieseiten selbst crawlbar sein sollten, sollten die Paginierungsparameter, die Sortier-/Seitenvarianten erzeugen, kontrolliert werden -

Disallow: /*?page=
Disallow: /*&page=
Disallow: /*?p=
Disallow: /*&p=

Wichtiger Hinweis - Seien Sie vorsichtig mit der Paginierung. Wenn Sie /*?page= vollständig blockieren, können Sie verhindern, dass Crawler Produkte erreichen, die nur auf tieferen Seiten erscheinen. Ein besserer Ansatz ist die Implementierung von rel="canonical"-Tags, die paginierte Seiten auf die erste Seite verweisen, oder die Verwendung von rel="next" und rel="prev" Paginierungssignalen.

5. Vergleichsseiten und Wunschlisten

Disallow: /*?controller=comparison
Disallow: /comparison
Disallow: /*?controller=wishlist
Disallow: /module/blockwishlist/

6. Admin- und Systemverzeichnisse

Disallow: /admin*/
Disallow: /app/
Disallow: /bin/
Disallow: /cache/
Disallow: /classes/
Disallow: /config/
Disallow: /controllers/
Disallow: /docs/
Disallow: /download/
Disallow: /img/tmp/
Disallow: /localization/
Disallow: /mails/
Disallow: /override/
Disallow: /pdf/
Disallow: /src/
Disallow: /tools/
Disallow: /translations/
Disallow: /upload/
Disallow: /var/
Disallow: /vendor/
Disallow: /webservice/

7. URL-Tracking-Parameter

Marketing-Kampagnenparameter erzeugen doppelten Inhalt, wenn Bots getaggte URLs crawlen -

Disallow: /*?utm_source=
Disallow: /*?utm_medium=
Disallow: /*?utm_campaign=
Disallow: /*&utm_source=
Disallow: /*&utm_medium=
Disallow: /*&utm_campaign=
Disallow: /*?fbclid=
Disallow: /*?gclid=
Disallow: /*?ref=

Was Sie in PrestaShop erlauben müssen

1. Produkt- und Kategorieseiten

Diese sind der Kern Ihres Shops und müssen immer crawlbar bleiben. Blockieren Sie nicht Ihre Hauptinhaltsverzeichnisse.

2. CSS-, JavaScript- und Bilddateien

Google muss Ihre Seiten rendern können, um die Inhaltsqualität zu bewerten. Das Blockieren von CSS- oder JS-Dateien verhindert das Rendering und kann Ihre Rankings beeinträchtigen -

Allow: /themes/*/assets/
Allow: /themes/*/css/
Allow: /themes/*/js/
Allow: /js/
Allow: /img/
Allow: /modules/*/views/css/
Allow: /modules/*/views/js/

3. CMS-Seiten

Ihre rechtlichen Seiten, Über-uns-Seiten und Content-Marketing-Seiten sollten vollständig crawlbar sein. Stellen Sie sicher, dass sie nicht versehentlich von zu breiten Disallow-Regeln erfasst werden.

4. Hersteller- und Lieferantenseiten (falls verwendet)

Wenn Sie umfangreiche Hersteller- oder Lieferantenseiten mit einzigartigem Inhalt pflegen, lassen Sie diese crawlbar. Wenn es sich um dünne, automatisch generierte Seiten handelt, erwägen Sie, diese zu blockieren.

Umgang mit KI-Crawlern

Der Aufstieg von KI-Diensten hat eine neue Kategorie von Crawlern eingeführt, die Inhalte für Trainingszwecke scrapen. Wenn Sie verhindern möchten, dass Ihre Produktbeschreibungen, Bilder und andere Inhalte von KI-Modellen verwendet werden, können Sie spezifische Regeln hinzufügen -

# KI-Training-Crawler blockieren
User-agent: GPTBot
Disallow: /

User-agent: ChatGPT-User
Disallow: /

User-agent: CCBot
Disallow: /

User-agent: anthropic-ai
Disallow: /

User-agent: Google-Extended
Disallow: /

User-agent: FacebookBot
Disallow: /

User-agent: Bytespider
Disallow: /

Beachten Sie, dass das Blockieren von Google-Extended verhindert, dass Google Ihre Inhalte für KI-Training (Gemini) verwendet, während normales Googlebot-Crawling und die Indexierung Ihrer Seiten weiterhin möglich bleibt.

Vollständige empfohlene Robots.txt für PrestaShop

Hier ist eine umfassende robots.txt-Datei, die Sie für Ihren PrestaShop-Shop anpassen können -

# Hauptsuchmaschinen-Crawler
User-agent: *

# Statische Assets erlauben
Allow: /themes/*/assets/
Allow: /themes/*/css/
Allow: /themes/*/js/
Allow: /js/
Allow: /img/
Allow: /modules/*/views/css/
Allow: /modules/*/views/js/

# Systemverzeichnisse blockieren
Disallow: /app/
Disallow: /bin/
Disallow: /cache/
Disallow: /classes/
Disallow: /config/
Disallow: /controllers/
Disallow: /docs/
Disallow: /download/
Disallow: /img/tmp/
Disallow: /localization/
Disallow: /mails/
Disallow: /override/
Disallow: /pdf/
Disallow: /src/
Disallow: /tools/
Disallow: /translations/
Disallow: /upload/
Disallow: /var/
Disallow: /vendor/
Disallow: /webservice/

# Warenkorb, Kasse, Konto blockieren
Disallow: /cart
Disallow: /order
Disallow: /login
Disallow: /my-account
Disallow: /password-recovery
Disallow: /*?controller=cart
Disallow: /*?controller=order
Disallow: /*?controller=authentication
Disallow: /*?controller=my-account

# Filter und Sortierung blockieren
Disallow: /*?orderby=
Disallow: /*?orderway=
Disallow: /*?n=
Disallow: /*?q=
Disallow: /*?selected_filters=
Disallow: /*?id_currency=
Disallow: /*?tag=
Disallow: /*?back=
Disallow: /*&orderby=
Disallow: /*&orderway=
Disallow: /*&n=
Disallow: /*&q=
Disallow: /*&selected_filters=

# Suche blockieren
Disallow: /*?controller=search
Disallow: /*?search_query=
Disallow: /*&search_query=
Disallow: /*?s=
Disallow: /*&s=
Disallow: /search

# Tracking-Parameter blockieren
Disallow: /*?utm_source=
Disallow: /*?utm_medium=
Disallow: /*?utm_campaign=
Disallow: /*?fbclid=
Disallow: /*?gclid=

# Vergleich und Wunschliste blockieren
Disallow: /*?controller=comparison
Disallow: /comparison

# Sitemap
Sitemap: https://ihrshop.com/1_index_sitemap.xml

# KI-Training-Crawler blockieren
User-agent: GPTBot
Disallow: /

User-agent: ChatGPT-User
Disallow: /

User-agent: CCBot
Disallow: /

User-agent: Google-Extended
Disallow: /

Häufige Fehler, die Sie vermeiden sollten

Das Modules-Verzeichnis komplett blockieren

Die Standard-robots.txt von PrestaShop blockiert /modules/. Während Sie nicht möchten, dass Modul-PHP-Dateien gecrawlt werden, liefern viele Module kritische CSS- und JavaScript-Dateien aus diesem Verzeichnis. Die pauschale Blockierung kann Google daran hindern, Ihre Seiten korrekt zu rendern. Blockieren Sie stattdessen /modules/, erlauben Sie aber explizit CSS- und JS-Unterverzeichnisse wie oben gezeigt.

Robots.txt statt Noindex verwenden

Ein kritisches Missverständnis - robots.txt teilt Bots mit, eine URL nicht zu crawlen, verhindert aber nicht die Indexierung. Wenn eine andere Website auf eine Seite verlinkt, die Sie in robots.txt blockiert haben, kann Google sie trotzdem indexieren (mit der Meldung "Für dieses Ergebnis ist aufgrund der robots.txt dieser Website keine Beschreibung verfügbar"). Für Seiten, die Sie vollständig aus den Suchergebnissen entfernen möchten, verwenden Sie stattdessen das noindex-Meta-Tag oder den X-Robots-Tag-HTTP-Header.

Die Sitemap-Referenz vergessen

Fügen Sie immer Ihre Sitemap-URL am Ende der robots.txt ein. Dies hilft Crawlern, Ihre Sitemap sofort zu finden. Wenn Sie ein Modul verwenden, das mehrere Sitemaps generiert, referenzieren Sie die Sitemap-Index-Datei.

Zu breite Regeln verwenden

Eine Regel wie Disallow: /*? würde jede URL mit einem beliebigen Query-Parameter blockieren, was katastrophal wäre. Seien Sie spezifisch mit Ihren Regeln und testen Sie sie mit dem robots.txt-Tester der Google Search Console, bevor Sie sie bereitstellen.

Testen Ihrer Robots.txt-Konfiguration

  1. Google Search Console - Verwenden Sie das Robots.txt-Tester-Tool (unter den Legacy-Tools zu finden), um bestimmte URLs gegen Ihre Regeln zu prüfen
  2. Manuelles Testen - Besuchen Sie ihrshop.com/robots.txt direkt in Ihrem Browser, um zu überprüfen, ob die Datei zugänglich und korrekt formatiert ist
  3. Abdeckungsbericht - Überwachen Sie nach der Bereitstellung von Änderungen den Abdeckungsbericht in der Google Search Console auf unerwartete Anstiege bei "Ausgeschlossenen" Seiten
  4. Log-Datei-Analyse - Überprüfen Sie Ihre Serverprotokolle, um sicherzustellen, dass Bots Ihre Regeln tatsächlich respektieren und kein Crawl-Budget für blockierte URLs verschwenden

Multistore-Überlegungen

Wenn Sie ein PrestaShop-Multistore-Setup betreiben, benötigt jeder Shop (jede Domain) seine eigene robots.txt-Datei in seinem Stammverzeichnis. Der PrestaShop-Generator erstellt Regeln für alle Shops in einer einzigen Datei, aber wenn Ihre Shops auf verschiedenen Domains liegen, müssen Sie diese entsprechend aufteilen. Die robots.txt jedes Shops sollte auf seine eigene Sitemap verweisen und Regeln haben, die seiner URL-Struktur entsprechen.

Wann Sie Ihre Robots.txt regenerieren sollten

Sie sollten Ihre robots.txt regenerieren oder aktualisieren, wenn Sie -

  • Neue Module hinzufügen, die öffentlich zugängliche URLs erstellen (Suchmodule, Filtermodule)
  • Ihre URL-Struktur ändern oder freundliche URLs aktivieren/deaktivieren
  • Themes wechseln (verschiedene Themes können Assets von verschiedenen Pfaden bereitstellen)
  • Sprachen hinzufügen oder entfernen (was URL-Präfixe ändert)
  • Die Multistore-Funktion aktivieren oder deaktivieren
  • Ungewöhnliche Crawl-Muster in Ihren Serverprotokollen oder der Google Search Console bemerken

Denken Sie daran - erstellen Sie immer eine Sicherungskopie Ihrer funktionierenden robots.txt, bevor Sie sie regenerieren. Der PrestaShop-Generator überschreibt die Datei vollständig, und alle manuell hinzugefügten benutzerdefinierten Regeln gehen verloren, sofern Sie sie nicht nach der Generierung erneut hinzufügen.

War diese Antwort hilfreich?

Haben Sie noch Fragen?

Can't find what you're looking for? Send us your question and we'll get back to you quickly.

Lade ...
Nach oben