# Plugin zur Registrierung

**URL:** https://forum.shopware.com/t/plugin-zur-registrierung/52730
**Category:** Programmierung
**Created:** [4. Mai 2018 um 08:11 UTC](https://forum.shopware.com/t/plugin-zur-registrierung/52730 "2018-05-04T08:11:32Z")
**Posts on this page:** 12
**Page:** 1

<div class="post-metadata">

### Author: ![SieOtto](https://avatars.discourse-cdn.com/v4/letter/s/7bcc69/32.png) [@SieOtto](https://forum.shopware.com/u/SieOtto)
#### Post date: [4. Mai 2018 um 08:11 UTC](https://forum.shopware.com/t/plugin-zur-registrierung/52730/1 "2018-05-04T08:11:32Z")

</div>

Hallo liebe Community,

ich bin ein Shopwareneuling und bin jetzt ein Shopware PlugIn Tutorial durchgegangen, bei dem man sich auf das Event:

Enlight\_Controller\_Action\_PostDispatch\_Frontend\_Detail

abonniert hat. Damit wird man wach gemacht, wenn man ein Produkt öffnet.

Jetzt würde ich gerne ein PlugIn schreiben, das bei der Behandlung der Benutzerregistrierung wirkt und weiß nicht wie ich mich hier aufwecken lassen kann.

Gibt es dazu eine Beschreibung aller Events?&nbsp;

Bzw. wie würdet ihr das machen. (Ich würde gerne den Benutzernamen validieren in dem ich ihne mit Werten von extern vergleiche)

Viele Grüße

---

<div class="post-metadata">

### Author: ![vierpunkt](https://avatars.discourse-cdn.com/v4/letter/v/ec9cab/32.png) [@vierpunkt](https://forum.shopware.com/u/vierpunkt)
#### Post date: [4. Mai 2018 um 11:38 UTC](https://forum.shopware.com/t/plugin-zur-registrierung/52730/2 "2018-05-04T11:38:53Z")

</div>

es gibt den Profiler den du dir per Upload in Shopware installieren kannst.

> **[FriendsOfShopware/FroshProfiler](https://github.com/FriendsOfShopware/FroshProfiler)**
>
> Profiling for Shopware. Contribute to FriendsOfShopware/FroshProfiler development by creating an account on GitHub.

dieser zeigt dir alle events variablen etc an

---

<div class="post-metadata">

### Author: ![SieOtto](https://avatars.discourse-cdn.com/v4/letter/s/7bcc69/32.png) [@SieOtto](https://forum.shopware.com/u/SieOtto)
#### Post date: [4. Mai 2018 um 12:43 UTC](https://forum.shopware.com/t/plugin-zur-registrierung/52730/3 "2018-05-04T12:43:04Z")

</div>

Ahja, danke. Ich hab durch deinen Hinweis getriggert einfach mit dem xdebugger mir das Event angesehen:

Enlight\_Controller\_Action\_PostDispatch\_Frontend\_Register

Kann ich denn irgendwie aus dem PlugIn heraus ein Textfeld anlegen?

Vielleicht kennt ja jemand ein PlugIn, bei dem das bereits gemacht wird. Dann könnt ich mir das da abschauen.

---

<div class="post-metadata">

### Author: ![BestShopPossible](https://avatars.discourse-cdn.com/v4/letter/b/6bbea6/32.png) [@BestShopPossible](https://forum.shopware.com/u/BestShopPossible)
#### Post date: [4. Mai 2018 um 14:30 UTC](https://forum.shopware.com/t/plugin-zur-registrierung/52730/4 "2018-05-04T14:30:34Z")

</div>

a)&nbsp; gibt es eine ordentliche Doku:&nbsp;[https://developers.shopware.com/](https://developers.shopware.com/)

da findest du auch brauchbare Beispiele wie man die Attributes-Tabellen erweitert. Wenn Du ein reines Textsnippet erzeugen möchtest, reicht es in den Theme Anpassungen den Default-Wert mit zu geben {s namespace= name=}Defaultwert{/s}

b) im Frontend immer die Secure Events subscriben:

Enlight\_Controller\_Action\_PostDispatchSecure\_Frontend\_Register

---

<div class="post-metadata">

### Author: ![SieOtto](https://avatars.discourse-cdn.com/v4/letter/s/7bcc69/32.png) [@SieOtto](https://forum.shopware.com/u/SieOtto)
#### Post date: [7. Mai 2018 um 13:25 UTC](https://forum.shopware.com/t/plugin-zur-registrierung/52730/5 "2018-05-07T13:25:59Z")

</div>

Erstmal danke BestShopPossible,

also ich hab ein wenig in der Doku gesucht und bin auch (glaub ich) fündig geworden. Habe aber trotzdem Startschwierigkeiten.

Also ich hab mich, wie in b) auf&nbsp;Enlight\_Controller\_Action\_PostDispatchSecure\_Frontend\_Register gehangen.

Dann hab ich&nbsp;

$subject = $args-\>getSubject();  
$subject-\>View()-\>addTemplateDir($this-\>Path() . ‚Views/‘);

versucht mein Template einzubinden.

Hier habe ich unter meinem Plugin eine Views/frontend/register/biling\_fieldset.tpl erstellt.

Dorthin habe ich dann den ganzen Block&nbsp;{block name=‚frontend\_register\_billing\_fieldset\_company\_body‘} aus der original Datei kopiert.

Jetzt hab ich versuchshalber alle Placeholder zu&nbsp;RegisterLabelDepartment gemacht.&nbsp;

Das ist das mittlere der drei Felder.&nbsp;

Trotzdem sind noch alle drei mit verschiedenen Namen belegt.

&nbsp;

---

<div class="post-metadata">

### Author: ![BestShopPossible](https://avatars.discourse-cdn.com/v4/letter/b/6bbea6/32.png) [@BestShopPossible](https://forum.shopware.com/u/BestShopPossible)
#### Post date: [9. Mai 2018 um 10:04 UTC](https://forum.shopware.com/t/plugin-zur-registrierung/52730/6 "2018-05-09T10:04:19Z")

</div>

> [@SieOtto schrieb:](https://forum.shopware.com/profile/28890/SieOtto "SieOtto")
> 
> &nbsp;
> 
> Jetzt hab ich versuchshalber alle Placeholder zu&nbsp;RegisterLabelDepartment gemacht.&nbsp;
> 
> Das ist das mittlere der drei Felder.&nbsp;
> 
> Trotzdem sind noch alle drei mit verschiedenen Namen belegt.
> 
> &nbsp;

Versteh ich nicht. Was soll erreicht werden? Was heißt Placehoder zu RegisterLabelDepartment gemacht?

Heißt das Du wolltest, die Textsnippets {s …}Defaultwert{/s} zu Versuchszwecken ändern indem Du eine Label-Beschriftung mit einer anderen ausgetauscht hast?

Bei Shopware ist es wichtig, dass die Pfade auch richtig sind. Heißt deine Ordnerstruktur sieht dann auch so aus: …/Views/frontend/register und oben steht ein extends file = und dein Plug-In liegt im custom Ordner?&nbsp;

---

<div class="post-metadata">

### Author: ![SieOtto](https://avatars.discourse-cdn.com/v4/letter/s/7bcc69/32.png) [@SieOtto](https://forum.shopware.com/u/SieOtto)
#### Post date: [9. Mai 2018 um 10:09 UTC](https://forum.shopware.com/t/plugin-zur-registrierung/52730/7 "2018-05-09T10:09:38Z")

</div>

Hallo BestShopPossible,

es ist tatsächlich der Pfad, dieser wird bei mir auf dem Windows Server falsch zusammengesetzt. Wenn ich das Plugin auf einem Linux Server teste, gehts…

Da hab ich gerade aber andere Probleme.

Vielleicht hast du das schon mal gesehen:

Mir fehlt das Theme. In Web/Cache wird eine leere css Datei erzeugt. Ich bekomme also eine blanke HTML Seite

---

<div class="post-metadata">

### Author: ![BestShopPossible](https://avatars.discourse-cdn.com/v4/letter/b/6bbea6/32.png) [@BestShopPossible](https://forum.shopware.com/u/BestShopPossible)
#### Post date: [9. Mai 2018 um 10:57 UTC](https://forum.shopware.com/t/plugin-zur-registrierung/52730/8 "2018-05-09T10:57:25Z")

</div>

Hört sich nach einem&nbsp;5xx Fehler und damit Serverprotokollsuche an.&nbsp;

Ansonsten Frontenderrors anschmeißen und im Forum einen alten Thread raussuchen in welchem beschrieben wird, wie man an Fehlermeldungen in SW kommt. Eine Fehlermeldung gibt es „immer“, man muss sie nur finden 😉

---

<div class="post-metadata">

### Author: ![SieOtto](https://avatars.discourse-cdn.com/v4/letter/s/7bcc69/32.png) [@SieOtto](https://forum.shopware.com/u/SieOtto)
#### Post date: [14. Mai 2018 um 12:48 UTC](https://forum.shopware.com/t/plugin-zur-registrierung/52730/9 "2018-05-14T12:48:04Z")

</div>

Also, es lag am Server. Hab jetzt die richtigen Stellschrauben gefunden. Ich habe jetzt auch ein Feld in der View mit dem passenden Placeholder.

Es ist die alte Kundennummer

 ![](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/2X/3/3e21140c5ac8a4ed871d0f9d66392713f13c8391.png)

was mir jetzt aus der Beschreibung nicht klar wird:

1.) Ist wie ich jetzt der Benutzertablle in der Datenbank eine neue Spalte hinzufügen kann um den Wert hier zu speichern und

2.) wie ich an die Validierungsfunktion komme, bzw. wie ich an die Funktion des Submit-Buttons komme. Ich nehme mal an, dass da die Validierung gestartet wird.

---

<div class="post-metadata">

### Author: ![BestShopPossible](https://avatars.discourse-cdn.com/v4/letter/b/6bbea6/32.png) [@BestShopPossible](https://forum.shopware.com/u/BestShopPossible)
#### Post date: [22. Mai 2018 um 12:08 UTC](https://forum.shopware.com/t/plugin-zur-registrierung/52730/10 "2018-05-22T12:08:09Z")

</div>

Für 1) gibt es in shopware die TABELLENNAME\_attributes Tabellen. Wenn man Tabellen erweitern will, dann erweitert man die …\_attributes Tabellen, diese werden bei Updates nicht überschrieben.

[https://developers.shopware.com/developers-guide/attribute-system/#schema-operations-and-configuration](https://developers.shopware.com/developers-guide/attribute-system/#schema-operations-and-configuration)

Für 2) Das Formular des Submit-Buttons verweist ja (im Theme) auf einen bestimmten Controller und eine bestimmte Action. Ab da müsstest du dann eben in /engine/Shopware/Controllers/Frontend auf die Suche gehen. Wo ist die Action (bei PHP-Storm strg+umschalt+F auf den Controllers Ordner und dann „[ACTIONNAME]Action“ als Suchparamater -\> sprich „…Action“) und was passiert ab da, welche Funktionen werden aufgerufen. Da kommt man schnell auf die gewünschten (rechtsklick-\>Go To-\>Declaration).

---

<div class="post-metadata">

### Author: ![SieOtto](https://avatars.discourse-cdn.com/v4/letter/s/7bcc69/32.png) [@SieOtto](https://forum.shopware.com/u/SieOtto)
#### Post date: [24. Mai 2018 um 09:01 UTC](https://forum.shopware.com/t/plugin-zur-registrierung/52730/11 "2018-05-24T09:01:40Z")

</div>

Danke, das hat geholfen.

Nächste Frage:

Wenn ich die eingegebenen Daten speichere mit&nbsp;

```
$controller = $args -> getSubject();
$request = $controller -> Request();
$data = $request -> getParams();
$controller->View()->assign($data);

```

Dann werden alle Shopwareeigenen Daten übernommen.

Meine Daten. z.b. die selbst angelegte Kundennummer

name=“register[billing][attribute][kundennummer]”

nicht.

D.h. wenn ich die Registrierung abbreche, lande ich wieder bei der Registrierungsseite, allerdings fehlen mir die Eingaben aus meinen Feldern.

---

<div class="post-metadata">

### Author: ![BestShopPossible](https://avatars.discourse-cdn.com/v4/letter/b/6bbea6/32.png) [@BestShopPossible](https://forum.shopware.com/u/BestShopPossible)
#### Post date: [24. Mai 2018 um 17:47 UTC](https://forum.shopware.com/t/plugin-zur-registrierung/52730/12 "2018-05-24T17:47:57Z")

</div>

Na bei deineem Beispiel reicherst du das $data Array auch nicht an.

Bei den meisten Controllern zieht sich Shopware deine angelegten Attributes-Felder mit. Einfach mal in der Freitextfeldverwaltung prüfen ob die da auch drinstehen. Ansonsten vielleicht darüber einmal erstellen. IMMER wichtig (ob Freitextfeldverwaltung oder über Plug-In) immer im Anschluss die Models neu generieren. Am besten einfach mal in der Freitextfeld-Verwaltung die Models neu generieren und gucken ob es geht.&nbsp;

Ansonsten müsstest du das natürlich so machen:

```
$data = $request -> getParams();
//$data is a flat array? if so:
$data['myData'] = $myData;
//if following line should work:
$controller->View()->assign($data);

```

&nbsp;
