Shopware/Components/Routing/Matchers/RewriteMatcher getQueryFormOrgPath überschreiben

Hallo zusammen,

ich möchte gerne die SEO URLs in meinem Shop etwas verändern. Dazu würde ich die s_core_rewrite_urls selbst mit zusätzlichen URLs befüllen und etwas andere Input Variablen mitgeben. 

Diese möchte ich später beim Seitenaufruf abfangen und nochmal ändern, z.B. die ArticleID aus den Paramtern ermitteln und dann setzen.

Wie kann ich irgendwie an die getQueryFormOrgPath() Funktion des Shopware/Components/Routing/Matchers/RewriteMatcher ran? Ich möchte eigentlich nur den $query vor dem Return nochmal ändern, das würde mir bereits genügen.

Beste Grüße und schonmal vielen Dank!

Hey Sebbo,

du müsstest den Router Factory dekorieren und deinen eigenen RewriteMatcher dann einsetzen. Evtl. reicht dir auch der EventMatcher dieser feuert bei jeder Anfrage ein Event ab, wo du dich per Plugin reinhängen kannst. shopware/EventMatcher.php at 27507fe404cede0b75ad561fc081ce4fc9554569 · shopware/shopware · GitHub

Ich habe mal ein PR erstellt um das in der Zukunft zu erleichtern :) Use di for router generators, matchers, pre/postfilters by shyim · Pull Request #952 · shopware/shopware · GitHub

Hallo Shyim,

vielen Dank für die ausführliche Antwort.

Der EventMatcher reicht mir leider nicht, den habe ich auch schon gefunden.

Wir genau könnte ich denn meinen eigenen Rewrite Matcher einsetzen? Hast du da noch ein paar Hinweise oder evtl. ein Beispiel?

Danke!