Wie Shopware paginierte Listen kanonisiert
In 6.6 zeigt jede Seitenvariante auf die saubere URL. In 6.7 zeigt ?p=1 auf sich selbst — zwei indexierbare Adressen mit identischem Inhalt, entstanden durch ein Update.

Paginierung ist eine der Stellen, an denen ein Shop unbemerkt doppelte Adressen erzeugt. Wir haben gemessen, wie Shopware damit umgeht — und dabei einen Unterschied zwischen 6.6 und 6.7 gefunden, der beim Update niemandem auffällt.
Der Aufbau
Beide Storefronts liefen parallel, jede mit korrektem Host-Header. Wir haben dieselbe Kategorie fünfmal abgefragt und jeweils Statuscode und Canonical aus dem Quelltext gelesen.
| aufgerufene URL | 6.6.10.6 | Canonical | 6.7.13.1 | Canonical |
|---|---|---|---|---|
/kategorie | 200 | saubere URL | 200 | saubere URL |
/kategorie?p=1 | 200 | saubere URL | 200 | ...?p=1 |
/kategorie?p=2 | 200 | saubere URL | 200 | saubere URL |
/kategorie?p=99 | 200 | saubere URL | 301 | — |
/kategorie?limit=1&p=2 | 200 | saubere URL | 200 | saubere URL |
Zwei Veränderungen, eine gute und eine mit Folgen.
Die gute: 301 bei ungültigem Seitenwert
Ein ?p=99 auf einer Kategorie mit drei Seiten ist in 6.6 eine Seite mit
Statuscode 200 — leer, aber gültig. In 6.7 wird daraus eine Weiterleitung auf
die saubere URL. Das ist sauberer: Adressen, hinter denen nichts steht, sollen
keine 200 liefern.
Die mit Folgen: ?p=1 zeigt auf sich selbst
In 6.7 liefert /kategorie?p=1 den Statuscode 200 und einen Canonical, der
auf /kategorie?p=1 verweist. Damit gibt es zwei Adressen mit identischem
Inhalt, die beide indexierbar sind und beide auf sich selbst zeigen.
Warum das zählt: Die erste Seite einer Liste ist dieselbe Seite wie die Kategorie ohne Parameter. Wenn beide indexierbar sind, teilen sie sich die Signale — eingehende Links, Klicks, Relevanz. Welche Google führt, entscheidet dann Google.
Woher ?p=1-Aufrufe kommen
Die Adresse entsteht nicht von selbst, aber häufiger, als man denkt:
- Paginierungslinks, die auch für die erste Seite einen Parameter setzen
- Filter und Sortierungen, die beim Zurücksetzen
p=1mitschreiben - Kampagnen-URLs, in denen jemand den Parameter aus Gewohnheit anhängt
- externe Links, die auf eine gefilterte Ansicht zeigten
Ein Blick in die Serverlogs oder in die Search Console (Seiten mit Parameter) zeigt schnell, ob es den Fall im eigenen Shop gibt.
Was Sie tun können
Erst prüfen, dann handeln. Rufen Sie eine Kategorieseite mit ?p=1 auf
und sehen Sie im Quelltext nach, worauf der Canonical zeigt. In 6.6 ist alles
in Ordnung, in 6.7 nicht.
Die saubere URL erzwingen. Zwei Wege führen zum Ziel: entweder eine
Weiterleitung von ?p=1 auf die parameterlose Adresse, oder ein korrigierter
Canonical im Template. Die Weiterleitung ist eindeutiger, weil sie auch
Nutzer und Logs vereinheitlicht.
Interne Links aufräumen. Wenn die eigene Paginierung auf Seite 1 mit Parameter verlinkt, erzeugt der Shop den Fall selbst. Das ist die Stelle, an der er am billigsten behoben wird.
Die Sitemap kontrollieren. In die Sitemap gehört nur die saubere Adresse. Was Shopware dort automatisch einträgt, haben wir in Sitemap in Shopware: was drinsteht aufgeschlüsselt.
Einordnung: kein Drama, aber eine Nacharbeit
Doppelte Adressen dieser Art sind kein Grund zur Panik. Sie sind eine Reibung, die sich summiert — besonders in Shops mit vielen Kategorien und tiefen Listen. Und sie sind ein gutes Beispiel für die Sorte Veränderung, die ein Versionssprung mitbringt, ohne dass sie in einer Liste mit Neuerungen steht.
Wer den Wechsel plant, findet die übrigen Punkte in unserer Gegenüberstellung von 6.6 und 6.7.
Grenzen dieser Messung
Geprüft haben wir eine Kategorie je Runtime mit fünf Parametervarianten und Standard-Template. Shops mit angepasstem Listing-Template, mit Filter-Erweiterungen oder mit eigener Paginierung können sich anders verhalten — in beide Richtungen. Nicht geprüft haben wir das Verhalten bei Suchergebnisseiten und bei Herstellerlisten, und nicht, wie Google die doppelten Adressen im konkreten Fall behandelt.
Häufige Fragen
- Wie kanonisiert Shopware paginierte Kategorieseiten?
- In 6.6.10.6 zeigt jede von uns geprüfte Variante auf die saubere Kategorie-URL. In 6.7.13.1 gilt das für ?p=2 und höher, nicht aber für ?p=1 — dort zeigt der Canonical auf die Adresse mit Parameter.
- Ist ?p=1 mit eigenem Canonical ein Problem?
- Es erzeugt eine zweite indexierbare Adresse mit identischem Inhalt. Suchmaschinen entscheiden dann selbst, welche sie führen — statt der Entscheidung zu folgen, die der Shop treffen wollte.
- Woher kommt ein Aufruf mit ?p=1 überhaupt?
- Aus Paginierungslinks, aus Filtern, die den Seitenwert zurücksetzen, aus Kampagnen-URLs und aus externen Verlinkungen. In Logfiles taucht er regelmäßig auf.
- Was ist mit rel=next und rel=prev?
- Diese Auszeichnung wertet Google seit Jahren nicht mehr als Paginierungssignal aus. Entscheidend sind heute der Canonical und die interne Verlinkung.
