Home > Programmierung > OXID eShop: SEO URLs in Kleinbuchstaben

OXID eShop: SEO URLs in Kleinbuchstaben

Ich persönlich finde es nicht schön, wenn die “sprechenden URLs” eine Mischung aus Groß- und Kleinschreibung sind. Eigentlich wird doch im Internet alles klein geschrieben ;-)

Um die SEO-URLs im Shop immer in Kleinbuchstaben zu bekommen, muss man(n) diese vor dem Speichern nur konvertieren.

Das ganze passiert in der core/oxseoencoder.php, Zeile 605.

original Code:

$sSeoUrl = $oDb->quote( $sSeoUrl );

abgeänderter Code:

$sSeoUrl = $oDb->quote( strtolower($sSeoUrl) );

Das Problem: Wenn man direkt in den OXID-Dateien eine Änderung vornimmt, muss man beim nächsten Update – und das kommt regelmäßig – aufpassen, dass diese Datei nicht wieder überschrieben wird. Normalerweise baut man sich dafür auch ein kleines Modul, jedoch war mir der Aufwand wegen einer Zeile zu groß ;-)

Anmerkung: Auch “fixierte SEO-URLs” werden in Kleinbuchstaben gespeichert.

Getstet in Version: OD eShop Community Edition 4.1.5 (21618)

Programmierung , , , , ,

  1. 2. September 2009, 14:09 | #1

    oh nein sowas kann ich nicht dulden … KEIN Modul :)
    Also ka ob der Ansatz funktioniert aber hier ein nicht getestetes Modul welches alles klein macht ;)
    http://dl.getdropbox.com/u/1535706/lower_oxseoencoder.php

  2. tabsl
    3. September 2009, 07:06 | #2

    @Mathias
    so, kollege, ich zitiere dich mal ;-)

    “Also oxUBase kann nicht mit dem OXID Modulkonzept erweitert werden, ebensowenig andere Klassen von denen Vererbt wird (oxView, oxBase, etc.) [...]”

    und die oxSeoEncode zählt da wohl dazu ;-)

    (hab ich aber auch erst nach einer halben stunde gemerkt, als ich das modul richtig schreiben wollte *zefix)

  3. 3. September 2009, 10:05 | #3

    fg*** hab ich nicht gesehen, klar die SeoEncoder für Artikel, Kategorien etc … grml du hast recht … also man “könnte” jetzt zusätzlich noch Module schreiben für oxseonecodecategory, oxseoencodearticle etc…

    wenn man mal nicht nachdenkt .. sorry also für den Nutzlosen Hinweis

  4. tabsl
    3. September 2009, 10:11 | #4

    @Mathias

    so schauts aus ;-) aber so ist hier zumindest bisschen was los und die leute wissen wo sie ansetzen müssen.

    wenn ich lust und zeit habe, mach ich evtl. die module noch

  5. Christoph
    3. September 2009, 22:28 | #5

    War auch nach der Suche nach dieser Angelegenheit.

    Ich habe mir gerade die einzelnen Dateien oxseoencoderarticle, oxseoencodercategories, etc. angesehen. Jedoch müsste man hier jede Funktion in jeder Datei anfassen bzw. ins Modul teilweise kopieren.

    Der damit verbundene Aufwand rechtfertigt es in keinster Weise, nach einem Update eine Zeile zu korrigieren. Und so wie ich das sehe tut sich an den SEO-Geschichten kaum was.

    Soviel von mir dazu. Christoph!

  6. Roland
    5. Oktober 2009, 13:10 | #6

    In der Version 4.1.6 finde ich die Stelle “$sSeoUrl = $oDb->quote( $sSeoUrl );” leider nicht mehr. Hat sich da was geänderT?

  7. Heike
    5. Oktober 2009, 13:49 | #7

    Probier´s mal hier: $sSeoUrl = $this->_trimUrl( $sSeoUrl );

  8. Roland
    5. Oktober 2009, 15:40 | #8

    Nein, mit $sSeoUrl = $this->_trimUrl( strtolower($sSeoUrl) ); ändert sich nichts.

  9. vitali
    27. November 2009, 11:29 | #9

    Suche [phpcode] return $sSeoUrl; [/phpcode]

    und Ersetze durch [phpcode]return strtolower($sSeoUrl);[/phpcode]

    so ist es besser

  1. Bisher keine Trackbacks