Hi,
es könnte denke ich an der Rewritetable liegen,
sonst war die immer in der Engine/core/class/ sRewriteTable.php,
die Datei ist zwar immer noch dort, aber in der Datei ist die Rewite Tabelle nicht mehr drin.
wahrscheinlich werden “.” umgeschrieben/ersetzt durch “-” denn auch alle anderen Punkte im Titel welcher als Produkt url umgeschrieben wird, werden durch - ersetzt.
Wir haben eine neue Komponente eingebunden die nun das Handling übernimmt. Das ist soweit auch nützlich, da man sich damit das manuelle Mapping spart und auch international die URLs korrekt generiert werden. Zu solchen Nebeneffekten darf es natürlich dennoch nicht kommen. Schauen wir uns wie Sebastian schrieb morgen direkt an!
Du hast doch gelesen, dass Sie sich dem Problem annehmen! Ich hoffe wir bekommen eine gute Lösung. Aus dem Github kann ich mir auch nichts nehmen, bin auch kein Programmierer.
wir werden vorraussichtlich nächste woche eine neue Version veröffentlichen in dem wir diesen Bug behoben haben.
In der Zwischenzeit könnt ihr folgenden quickfix benutzen.
In der Dateil engine/Shopware/Core/sRewriteTable.php in Zeile 196 (Mehode ist sCleanupPath) folgendes einfügen:
// replace -html with .html at the end of the string
if (substr($path, -5, 5) === '-html') {
$path = substr_replace($path, '.html',-5, 5);
}
Die gesamte methode sollte nun so aussehen:
public function sCleanupPath($path, $remove_ds = true)
{
// replace forward slash to dashes in strings like "Help / Support"
// to not create unnecessary directory levels
$path = preg_replace("#\s/\s#", "-", $path);
$parts = explode("/", $path);
$parts = array_map(function ($path) {
return $this->slug->slugify($path);
}, $parts);
$path = implode("/", $parts);
if (substr($path, -5, 5) === '-html') {
$path = substr_replace($path, '.html',-5, 5);
}
return $path;
}
Alternativ habe ich diesen Fix auch in Form eines Plugins. Dies kann einfach über den Plugin-Manager im Backend installiert und aktiviert werden: https://tempfile.me/dl/73apPNItqSYWmc/.
Hi,
danke für die schnelle Behebung, ich denke aber man müsste generell die Umscheibung des "."Punkt und „-“ weil in den vorherigen Versionen
im Titel die Punkte nicht umgeschrieben wurden, wenn sich dann jetzt alle SEO Urls auch ändern die schon bei Google gelistet sind.
Zwar wird man beim Aufrufen der Url automatisch zur richtigen Seite weitergeleitet aber ich denke es könnte seotechnisch nicht so günstig sein.
Die Änderung betrifft ja auch nur wenn man bei den Seo Einstellungen .html einstellt hat wenn man .php oder.htm einstellt müsste das auch wieder
geändert und angepasst werden.
Wäre es nicht auch möglich das die Rewrite Funktion nur wirlich den Titel, Kategorienamen umschriebn und nicht die statischen Endungen ( .html, .php) welche man bei den Seo Einstellungen festlegt.