Magento URL Rewrite verhindern -1 oder -2


7

Ich habe eine Kategorie erstellt, die den URL-Schlüssel "sofa" enthält, und die generierte URL lautet "sofa.html". URL schreibt den Systemdatensatz wie folgt neu:

ID Path : category/5
Request path : sofa.html
Target Path : catalog/category/view/id/5

Jetzt möchte ich eines der benutzerdefinierten Module über diese URL (sofa.html) ausführen, also habe ich System-URL-Umschreibungen gelöscht und benutzerdefinierte URL-Umschreibungen aus dem Backend wie folgt hinzugefügt:

ID path : alternate-sofa
Request path : sofa.html
Target path : alternate-sofa

Wenn ich sofa.html über den Browser ausführe, habe ich die erwartete Seite vom benutzerdefinierten Modul erhalten und das Problem beim Entfernen benutzerdefinierter Umschreibungen nach der Neuindizierung behoben, obwohl nach der Neuindizierung des neuen Systemdatensatzes Folgendes hinzugefügt wurde:

ID path : category/5
Request path : sofa-1.html
Target path : catalog/category/view/id/5

Jetzt habe ich folgendes Problem: Auf der Seite werden auf der linken Seite Kategorien aufgelistet, die eine Kategorie-URL als "sofa-1.html" enthalten, die mein Kategorielayout anstelle eines benutzerdefinierten Moduls anzeigt. Wie kann dieses Problem behoben werden? Ich möchte nicht Sofa-1.html, Sofa-2.html usw. erstellen.

Bearbeiten: Ich habe http://jc-designs.net/blog/2012/09/magento-adding-cms-pages-to-the-main-navigation/ und http://www.magentocommerce.com/knowledge-base referiert / entry / Hinzufügen von Seitenlinks in der Navigationsleiste, aber als ich 301 (dauerhaft) einstellte, änderte sich die URL von "sofa.html" in "alternatives Sofa", was im Browser nicht als URL erwartet wird.

Antworten:



1

Sie müssen die Einstellungen in admin unter System -> Konfiguration -> Katalog -> Katalog -> Suchmaschinenoptimierung -> Kategorie-URL-Suffix ändern - Dies sollte ".html" sein , Sie müssen es nur in BLANK ändern . Wenn Sie fertig sind, löschen Sie alle Einträge aus der Tabelle core_url_rewrite für alle Kategorien mit der folgenden Abfrage:

DELETE FROM core_url_rewrite WHERE product_id IST NULL UND LÄNGE (category_id)> 0

NB - Bitte sichern Sie die Datenbank, bevor Sie Aktualisierungs- / Einfüge- / Löschabfragen auf dem Produktionsserver ausführen

Ich hoffe es hilft

Prost S.


0

Die Art und Weise, wie ich mit -1 oder -2 in den URLs umgegangen bin, stellt sicher, dass alle Indexprozesse ausgeführt oder auf den manuellen Index gesetzt werden. Dann suche ich im URL Rewrite Manager nach allen angeforderten Pfaden mit -1 und entferne sie. Katalog-URL neu indizieren Umschreiben und sie sollten aufgelöst werden.


1
Nach der Neuindizierung wurde es erneut hinzugefügt, da "sofa.html" bereits vorhanden ist.
Kamal Joshi
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.