Liebe Community,
hier ist mal wieder ein Problem bei dem ich bisher noch keine optimale Lösung finden konnte, auch Google oder die Forensuche
brachte mich nicht weiter.
Folgendes Szenario: wir haben eine von vielen Kategorien im Shop mit 50 Produkten, pro Seite werden 30 Produkte angezeigt, macht also zwei Seiten:
http://domain.tld/Kategorie:::1.html mit den ersten 30 Produkten und
http://domain.tld/Kategorie:::1:2.html mit weiteren 20 Produkten
Das funktioniert und keiner beschwert sich, Google und seine Freunde nehmen auch brav beide URL's in ihren Index auf.
Nun nimmt der Shop-Betreiber 19 beliebige Produkte aus der Kategorie raus, weil es diese ganz einfach nicht mehr gibt. Jetzt wird auf der zweiten Seite nur noch ein Produkt angezeigt, dass aber gefällt dem Shop-Betreiber nicht und das Limit wird von 30 auf 50 gesetzt um alle Artikel auf einer Seite anzuzeigen. Da es nun keine zweite Seite mehr gibt werden für beide Links die gleichen Produkte angezeigt, in der gleichen Reihenfolge, beide Seiten haben Ihre spezielle URL auch als Canonical-Tag. Hier ist das Problem!
Die Information, wie viele Seiten mit Artikeln es gibt, habe ich erst wenn ich die Produkte aufliste, in der Datei
/includes/modules/product_listing.php. Hier kann ich allerdings kein Redirect für falsche Seitenzahlen machen da die Ausgabe bereits gestartet wurde. Dieser Redirect müsste in der
/includes/modules/metatags.php erfolgen, alternativ könnte ich mir hier auch die korrekte Canonical-URL bilden. Leider habe ich an dieser Stelle noch keine Information darüber wie viele Seiten mit Artikeln es für diese Kategorie gibt.
Wer hat eine intelligente Lösung für mich?
Ich möchte bitte keinen Vorschlag haben mir das
$listing_sql schon in der
metatags.php zusammen zu basteln, das ist nicht intelligent sondern ein dreckiger Workaround.
Vielen Dank,
Timo
Linkback: https://www.modified-shop.org/forum/index.php?topic=32295.0