# EventSubscriber Ordnerstruktur

**URL:** <https://forum.shopware.com/t/eventsubscriber-ordnerstruktur/18928>\
**Category:** Shopware 3.5\
**Tags:** programming\
**Created:** [7. März 2014 um 17:15 UTC](https://forum.shopware.com/t/eventsubscriber-ordnerstruktur/18928 "2014-03-07T17:15:09Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![tbl](https://avatars.discourse-cdn.com/v4/letter/t/57b2e6/32.png) [@tbl](https://forum.shopware.com/u/tbl)\
**Post date:** [7. März 2014 um 17:15 UTC](https://forum.shopware.com/t/eventsubscriber-ordnerstruktur/18928/1 "2014-03-07T17:15:09Z")

</div>

Hallo Zusammen Gemäss dem Upgrade Guide [http://wiki.shopware.de/Shopware-4.2-Up … ubscribers](http://wiki.shopware.de/Shopware-4.2-Upgrade-Guide-for-Developers%5C_detail%5C_1436.html#EventSubscribers) soll man anstelle der früher genutzten Methode $this-\>subscribeEvent(…) einen EventSubscriber erstellen und diesen registrieren: EventSubscriber: [code]\<?php use Enlight\Event\SubscriberInterface;

class PriceSubscriber implements SubscriberInterface {  
public static function getSubscribedEvents() {  
return array(  
‘Enlight\_Controller\_Front\_PostDispatch’ =\> ‘onFrontPostDispatch’ ); } public function onFrontPostDispatch($args) { Shopware()-\>Debuglogger()-\>info(‘Enlight\_Controller\_Front\_PostDispatch Event’); } } [/code] Boootstrap: ` public function install() { ... $eventManager = Shopware()-\>Events(); $subscriber = new PriceSubscriber(); $eventManager-\>addSubscriber($subscriber); Shopware()-\>Debuglogger()-\>info('Register Hook'); ... } ` Leider steht da nicht, wo man den EventSubscriber ablegen soll, damit er vom Autoloader gefunden wird. Sodass bei der Installation ein Fehler geworfen wird, weil er ihn nicht findet. Wo muss ich ihn ablegen, damit er gefunden wird?

---

<div class="post-metadata">

**Author:** ![tbl](https://avatars.discourse-cdn.com/v4/letter/t/57b2e6/32.png) [@tbl](https://forum.shopware.com/u/tbl)\
**Post date:** [10. März 2014 um 11:00 UTC](https://forum.shopware.com/t/eventsubscriber-ordnerstruktur/18928/2 "2014-03-10T11:00:13Z")

</div>

Ich antworte mir mal selbst: Die klassische API funktioniert unter Shopware 4.2 noch, nur haben sich die Argumente geändert. Ein Eventsubscriber anzulegen ist nicht zwingend notwendig. Bootstrap: ` private function registerEventsAndHooks() { // Events $this-\>subscribeEvent('Event', 'eventDispatchMethod'); // Hooks $this-\>subscribeEvent('sArticles::sGetArticleById::after', 'onHookDispatch'); } ` Quelle: [https://github.com/ShopwareAG/shopware- … criber.php](https://github.com/ShopwareAG/shopware-4/blob/master/engine/Shopware/Components/Model/EventSubscriber.php) (Kommentar der EventSubscriber Klasse) Ich wüsste allerdings trotzdem gerne, wo EventSubscriber abgelegt werden müssen.
