Einstieg in Pluginprogrammierung

Hey @MichaelMatz‍,

oh, da hat sich tatsächlich ein Fehler eingeschlichen.

Kurz zur Erklärung:
Das Plugin, das du installiert hast, heißt  SwagController  und läuft entsprechend auch unter dem Namespace  SwagController.
In Shopware laden wir Klassen per PSR-4 Autoloading, was eigentlich für dich erstmal nur heißt: Der Namespace jeder Klasse muss in Etwa dem Pfad zu der PHP Datei entsprechen, so wie die Klasse dem Dateinamen entsprechen muss.
Als Beispiel:
Die Datei im Pfad _meinPlugin/Controllers/Frontend/ExampleControllers/ Foo.php _hat den Klassennamen  Foo  und den Namespace MeinPlugin\Controllers\Frontend\ExampleControllers.

Warum ich dir das erkläre?
Wenn du nun einmal in das tatsächliche Plugin schaust, findest du eine Datei in folgendem Pfad: SwagController/Subscriber/ TemplateRegistration.php
Der Namespace müsste also SwagController\Subscriber lauten, gemäß dem Pfad. Und die Klasse eben  TemplateRegistration.
Wenn du die Datei nun aber öffnest, wirst du feststellen: Der Namespace oben passt nicht! Dieser lautet SwagProductListing, obwohl dort  SwagController  stehen müsste.

Das müsstest du also mal eben korrigieren. Wichtig ist, dass du das auch in der Datei SwagController/Resources/services.xml korrigierst, hier wird die selbe Klasse mitsamt falschem Namespace auch nochmal referenziert.

Danach läuft das Plugin.

Hilft dir das weiter?

Liebe Grüße,
Shopware Patrick Stahl

P.S.: Das Plugin in der Doku korrigiere ich natürlich eben. :slight_smile:
P.P.S: Hier kannst du meine Änderungen dazu sehen. Sind genau die, die du auch machen müsstest.
P.P.P.S: Änderung ist auch schon gemerged! :stuck_out_tongue:

1 „Gefällt mir“