# Eigenes Einkaufswelt-Plugin -\> Änderung führt zur Löschung der Einkaufswelt

**URL:** <https://forum.shopware.com/t/eigenes-einkaufswelt-plugin-anderung-fuhrt-zur-loschung-der-einkaufswelt/51657>\
**Category:** Programmierung\
**Created:** [9. März 2018 um 15:18 UTC](https://forum.shopware.com/t/eigenes-einkaufswelt-plugin-anderung-fuhrt-zur-loschung-der-einkaufswelt/51657 "2018-03-09T15:18:32Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![FloC3](https://avatars.discourse-cdn.com/v4/letter/f/838e76/32.png) [@FloC3](https://forum.shopware.com/u/FloC3)\
**Post date:** [9. März 2018 um 15:18 UTC](https://forum.shopware.com/t/eigenes-einkaufswelt-plugin-anderung-fuhrt-zur-loschung-der-einkaufswelt/51657/1 "2018-03-09T15:18:32Z")

</div>

Hallo,

ich habe ein Plugin erstellt das mehrere eigene Einkaufswelt-Elemente erzeugt. Diese kann ich auch einwandfrei in Einkaufswelten verwenden.

Problem ist nur, wenn ich mein Plugin erweitere. Beispielweise ein neues Feld&nbsp; hinzufüge.

Dann muss ich das Plugin komplett neu installieren (ein Update + Cache löschen und neuladen bringt keine Änderung). Nach dem Neuinstallieren sind natürlich meine ganzen Elemente aus den Einkaufswelten gelöscht worden… Warum funktioniert das nicht per Update?

---

<div class="post-metadata">

**Author:** ![FloC3](https://avatars.discourse-cdn.com/v4/letter/f/838e76/32.png) [@FloC3](https://forum.shopware.com/u/FloC3)\
**Post date:** [16. März 2018 um 07:48 UTC](https://forum.shopware.com/t/eigenes-einkaufswelt-plugin-anderung-fuhrt-zur-loschung-der-einkaufswelt/51657/2 "2018-03-16T07:48:20Z")

</div>

hat niemand eine Idee?

---

<div class="post-metadata">

**Author:** ![mson](https://avatars.discourse-cdn.com/v4/letter/m/5daacb/32.png) [@mson](https://forum.shopware.com/u/mson)\
**Post date:** [22. März 2018 um 16:59 UTC](https://forum.shopware.com/t/eigenes-einkaufswelt-plugin-anderung-fuhrt-zur-loschung-der-einkaufswelt/51657/3 "2018-03-22T16:59:25Z")

</div>

Habe das gleiche Problem und würde mich über eine Antwort freuen! 🙂

---

<div class="post-metadata">

**Author:** ![mson](https://avatars.discourse-cdn.com/v4/letter/m/5daacb/32.png) [@mson](https://forum.shopware.com/u/mson)\
**Post date:** [22. März 2018 um 17:09 UTC](https://forum.shopware.com/t/eigenes-einkaufswelt-plugin-anderung-fuhrt-zur-loschung-der-einkaufswelt/51657/4 "2018-03-22T17:09:52Z")

</div>

Ah, es gibt schon ein Ticket&nbsp;[Shopware Issuetracker](https://issues.shopware.com/issues/SW-19226)

---

<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:** [22. März 2018 um 17:15 UTC](https://forum.shopware.com/t/eigenes-einkaufswelt-plugin-anderung-fuhrt-zur-loschung-der-einkaufswelt/51657/5 "2018-03-22T17:15:46Z")

</div>

Hallo,

und wieso musst du beim Update deines Einkaufswelten - Element - Plugins (beispielsweise für&nbsp;ein neues Feld) das Plugin neu installieren?

Das ist doch gar nicht nötig, damit das neue Feld auch mit auswählbar&nbsp;etc ist. Einfach in der Update - Methode per SQL (gibt leider keine Shopware-Funktion dafür, um ein Einkaufswelten-Element zu aktualisieren/zu erweitern)&nbsp;das neue Feld hinzufügen, kompletten Cache leeren und Backend neu laden. Fertig.

Grüße

Sebastian

---

<div class="post-metadata">

**Author:** ![derwunner](https://avatars.discourse-cdn.com/v4/letter/d/e5b9ba/32.png) [@derwunner](https://forum.shopware.com/u/derwunner)\
**Post date:** [23. März 2018 um 08:39 UTC](https://forum.shopware.com/t/eigenes-einkaufswelt-plugin-anderung-fuhrt-zur-loschung-der-einkaufswelt/51657/6 "2018-03-23T08:39:48Z")

</div>

> [@sschreier schrieb:](https://forum.shopware.com/profile/18157/sschreier "sschreier")
> 
> Das ist doch gar nicht nötig, damit das neue Feld auch mit auswählbar&nbsp;etc ist. Einfach in der Update - Methode per SQL (gibt leider keine Shopware-Funktion dafür, um ein Einkaufswelten-Element zu aktualisieren/zu erweitern)&nbsp;das neue Feld hinzufügen, kompletten Cache leeren und Backend neu laden. Fertig.

Doch, es gibt eine Methode dafür: In Plugin Update Methode sich das passende Widget zum Plugin holen (genauso mit dem selben Widget Namen wie man es ursprünglich angelegt hat), Feld hinzufügen und Doctrine’s persist() und flush() aufrufen - fertig! **Kein SQL Gefummel oder ähnliches nötig**. Von direktem SQL in einem Plugin würde eh abraten, **immer DBAL QueryBuilder oder den Doctrine QueryBuilder verwenden!**

Aber es ist richtig, dass es das im neuen Plugin System nicht gibt. Das kann man aber ganz gut von der Basis-Bootstrap.php abschreiben und es so leicht ins neue System portieren. Habe ich bisher auch immer nur so gemacht - funktioniert super. Das ist auch der beschriebene Weg aus dem Shopware Buch.

---

<div class="post-metadata">

**Author:** ![Jonnitto](https://avatars.discourse-cdn.com/v4/letter/j/3be4f8/32.png) [@Jonnitto](https://forum.shopware.com/u/Jonnitto)\
**Post date:** [12. Mai 2018 um 16:39 UTC](https://forum.shopware.com/t/eigenes-einkaufswelt-plugin-anderung-fuhrt-zur-loschung-der-einkaufswelt/51657/7 "2018-05-12T16:39:55Z")

</div>

Ich werde gerne ein ähnliches Plugin machen, doch ich bekomme es nicht hin, Wärst du bereit mir Beispielcode zu senden?

&nbsp;

Liebe Grüße

Jon

---

<div class="post-metadata">

**Author:** ![langnickel](https://avatars.discourse-cdn.com/v4/letter/l/3ec8ea/32.png) [@langnickel](https://forum.shopware.com/u/langnickel)\
**Post date:** [1. Juni 2018 um 06:57 UTC](https://forum.shopware.com/t/eigenes-einkaufswelt-plugin-anderung-fuhrt-zur-loschung-der-einkaufswelt/51657/8 "2018-06-01T06:57:53Z")

</div>

Würde mich auch interessieren. Ich habe ein Plugin dass mehrere interne Emotion Widgets bereitstellt. Da kommen hin und wieder einige dazu oder es ändert sich was. Bei jeder Neuinstallation des Plugins sind auch alle Inhalte weg -\_-

---

<div class="post-metadata">

**Author:** ![mdsw](https://avatars.discourse-cdn.com/v4/letter/m/94ad74/32.png) [@mdsw](https://forum.shopware.com/u/mdsw)\
**Post date:** [10. Oktober 2018 um 09:15 UTC](https://forum.shopware.com/t/eigenes-einkaufswelt-plugin-anderung-fuhrt-zur-loschung-der-einkaufswelt/51657/9 "2018-10-10T09:15:28Z")

</div>

Hat hier jemand einen Ansatz, wie das in der neuen Plugin-Struktur bewerkstelligt werden kann?
