Servus zusammen, ich habe ein eigenes Plugin erstellt, das unter der URL www.example.com/de/MeinSuperPlugin auch erreichbar ist und funktioniert. Soweit so gut, allerdings ist diese URL natürlich nicht sonderlich hübsch. Vielmehr hätte ich gerne folgende URL: www.example.com/de/erweiterung/ Wer kann mir sagen, welchen Code ich hierfür an welcher Stelle einbinden muss? Im Wiki wurde ich diesbezüglich leider nicht fündig und auch im Forum fand ich keinen Beitrag, der mein Problem lösen konnte… Viele Grüße!
Du brauchst einen Eintrag in der DB-Tabelle s_core_rewrite_urls. Bspw. so: Shopware()-\>Modules()-\>sRewriteTable()-\>sInsertUrl( 'sViewport=Hersteller&sAction=detail&Hersteller=ABC', 'Hersteller/ABC' );
Diesen Schnipsel habe ich an anderer Stelle im Forum auch gefunden. Leider hilft er mir nicht wirklich weiter. Die Methode sRewriteTable() gibt´s nicht. Stattdessen gibt´s RewriteTable(). Aber wo will der Schnipsel untergebracht werden? In der install-Methode? Wenn ich folgenden Code dort eintrage… Shopware()-\>Modules()-\>RewriteTable()-\>sInsertUrl( 'de/MeinSuperPlugin', 'de/erweiterung/' );
…lässt sich das Plugin anschließend nicht mehr installieren. Sind meine Parameter denn so korrekt?
Nein, deine Parameter sind so nicht korrekt. Shopware()-\>Modules()-\>sRewriteTable()-\>sInsertUrl('sViewport=MeinSuperPlugin','meinsuperplugin');
Schau dir mal die DB-Tabelle s_core_rewrite_urls an. Der erste Parameter ist für path und der zweite für orig_path.
… oder du gibst deinem Controller direkt den richtigen Namen.