# Plugin Upgrade von SW 5.04 auf 5.1 funktioniert nicht

**URL:** <https://forum.shopware.com/t/plugin-upgrade-von-sw-5-04-auf-5-1-funktioniert-nicht/33353>\
**Category:** Programmierung\
**Created:** [5. Januar 2016 um 08:23 UTC](https://forum.shopware.com/t/plugin-upgrade-von-sw-5-04-auf-5-1-funktioniert-nicht/33353 "2016-01-05T08:23:24Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![taurus](https://avatars.discourse-cdn.com/v4/letter/t/dbc845/32.png) [@taurus](https://forum.shopware.com/u/taurus)\
**Post date:** [5. Januar 2016 um 08:23 UTC](https://forum.shopware.com/t/plugin-upgrade-von-sw-5-04-auf-5-1-funktioniert-nicht/33353/1 "2016-01-05T08:23:24Z")

</div>

Hallo @all, ich habe ein Problem mit einem kleinen Plugin, dass unter der SW 5.1.x leider nicht aufgerufen wird. Das Plugin soll einen Promotioncode in die Session legen, d.h. je nach parametrisiertem Aufruf wird die Promotion dann bis in das Freitextfeld1 der Bestellung übergeben. Wird kein Parameter angegeben so wird eine Standardpromotion aus der DB übernommen. Bis zur Version 5.0.4 klappte das alles wunderbar. Das ist die bis dato verwendete Funtion install: `public function install() { $event = $this-\>createEvent( 'Enlight\_Controller\_Action\_PostDispatch\_Frontend\_Index', 'onPostFrontpage'); $this-\>subscribeEvent($event); $event = $this-\>createEvent( 'Enlight\_Controller\_Action\_PostDispatch\_Frontend\_Listing', 'onPostListing'); $this-\>subscribeEvent($event); $event = $this-\>createEvent( 'Enlight\_Controller\_Action\_PostDispatch\_Frontend\_Detail', 'onPostDetail'); $this-\>subscribeEvent($event); $event = $this-\>createHook( 'sOrder', 'sSaveOrder', 'beforeOrder', Enlight\_Hook\_HookHandler::TypeBefore, 0 ); $this-\>subscribeHook($event); $event = $this-\>createEvent( 'Enlight\_Controller\_Action\_Frontend\_Checkout\_Finish', 'onPostFinish'); $this-\>subscribeEvent($event); $this-\>createForm(); return true; }` Da createEvent in der SW 5.1 nicht mehr gültig ist habe ich die Funktion dahingehend geändert: `public function install() { $this-\>subscribeEvents(); $this-\>subscribeHooks(); $this-\>createForm(); return true; } protected function subscribeEvents() { $this-\>subscribeEvent('Enlight\_Controller\_Action\_PostDispatch\_Frontend\_Index', 'onPostFrontpage'); $this-\>subscribeEvent('Enlight\_Controller\_Action\_PostDispatch\_Frontend\_Listing', 'onPostListing'); $this-\>subscribeEvent('Enlight\_Controller\_Action\_PostDispatch\_Frontend\_Detail', 'onPostDetail'); $this-\>subscribeEvent('Enlight\_Controller\_Action\_Frontend\_Checkout\_Finish', 'onPostFinish'); } protected function subscribeHooks() { $this-\>subscribeHook( 'sOrder', 'sSaveOrder', 'beforeOrder', Enlight\_Hook\_HookHandler::TypeBefore, 0); } ` Über den Pluginmanager lässt sich das Plugin installieren (dauert jedoch ungewöhnlich lange) und konfigurieren aber die subribeEvent werden nicht ausgelöst. Das habe ich bereits via Developer Toolbar kontrolliert. Wo könnte das Problem liegen. Btw: Im Logfile wird nichts protokolliert. Vielen Dank im voraus Thomas

---

<div class="post-metadata">

**Author:** ![taurus](https://avatars.discourse-cdn.com/v4/letter/t/dbc845/32.png) [@taurus](https://forum.shopware.com/u/taurus)\
**Post date:** [7. Januar 2016 um 08:56 UTC](https://forum.shopware.com/t/plugin-upgrade-von-sw-5-04-auf-5-1-funktioniert-nicht/33353/2 "2016-01-07T08:56:19Z")

</div>

Hallo, ich habe das Problem gelöst. subsrcibeHook() wird nicht akzeptiert. Ich habe das jetzt über subscribeEvent() gelöst. `public function install() { $this-\>subscribeEvents(); $this-\>createForm(); return true; } protected function subscribeEvents() { $this-\>subscribeEvent('Enlight\_Controller\_Action\_PostDispatch\_Frontend\_Index','onPostFrontpage'); $this-\>subscribeEvent('Enlight\_Controller\_Action\_PostDispatch\_Frontend\_Listing','onPostListing'); $this-\>subscribeEvent('Enlight\_Controller\_Action\_PostDispatch\_Frontend\_Detail','onPostDetail'); $this-\>subscribeEvent('Enlight\_Controller\_Action\_Frontend\_Checkout\_Finish','onPostFinish'); $this-\>subscribeEvent('sOrder::sSaveOrder::before','beforeOrder'); } ` Ich verstehe nur nicht den Hintergrund, vielleicht kann mir das ja jemand erläutern. Dafür wäre ich echt dankbar. Gruß aus Bayern Thomas Müller-Vellay

---

<div class="post-metadata">

**Author:** ![sschreier](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/sschreier/32/23296_2.png) [@sschreier](https://forum.shopware.com/u/sschreier)\
**Post date:** [7. Januar 2016 um 09:04 UTC](https://forum.shopware.com/t/plugin-upgrade-von-sw-5-04-auf-5-1-funktioniert-nicht/33353/3 "2016-01-07T09:04:15Z")

</div>

[quote=“taurus”] Ich verstehe nur nicht den Hintergrund, vielleicht kann mir das ja jemand erläutern. Dafür wäre ich echt dankbar.[/quote] Hallo, das liegt daran, das $this-\>subscribeHook() schon lange als deprecated deklariert wurde und nicht mehr verwendet und umgebaut werden soll. Bereits seit Shopware Version 4 sollte man Hooks anders aufrufen, siehe: [http://community.shopware.com/Shopware- … html#Hooks](http://community.shopware.com/Shopware-4-Events-und-Hooks%5C_detail%5C_981.html#Hooks) . Beste Grüße Sebastian
