# Prüfen, ob Artikel bereits im Warenkorb liegt (wie Shop...Basket\_AddArticle\_CheckBasketForArticle)?

**URL:** <https://forum.shopware.com/t/prufen-ob-artikel-bereits-im-warenkorb-liegt-wie-shop-basket-addarticle-checkbasketforarticle/64494>\
**Category:** Programmierung\
**Created:** [5. Februar 2020 um 11:45 UTC](https://forum.shopware.com/t/prufen-ob-artikel-bereits-im-warenkorb-liegt-wie-shop-basket-addarticle-checkbasketforarticle/64494 "2020-02-05T11:45:36Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![neonlines](https://avatars.discourse-cdn.com/v4/letter/n/c57346/32.png) [@neonlines](https://forum.shopware.com/u/neonlines)\
**Post date:** [5. Februar 2020 um 11:45 UTC](https://forum.shopware.com/t/prufen-ob-artikel-bereits-im-warenkorb-liegt-wie-shop-basket-addarticle-checkbasketforarticle/64494/1 "2020-02-05T11:45:36Z")

</div>

Hallo zusammen,

was ist der beste Weg, um in Shopware 6 beim Hinzufügen eines Artikels in den Warenkorb zu testen, ob es sich um einen bereits im Warenkorb befindlichen Artikel handelt oder ob es ein neuer ist? In Shopware 5 konnte das per Subscription auf&nbsp;Shopware\_Modules\_Basket\_AddArticle\_CheckBasketForArticle gelöst werden.

Oder muss ich das manuell machen z.B. mit&nbsp;LineItemAddedEvent, dort prüfen und dann ggf. ein weiteres LineItem einfügen? Falls ja, wie erzeuge ich dann eine ID für das neue LineItem?

Danke.

Viele Grüße  
Daniel

---

<div class="post-metadata">

**Author:** ![Moorleiche](https://avatars.discourse-cdn.com/v4/letter/m/6f9a4e/32.png) [@Moorleiche](https://forum.shopware.com/u/Moorleiche)\
**Post date:** [5. Februar 2020 um 12:51 UTC](https://forum.shopware.com/t/prufen-ob-artikel-bereits-im-warenkorb-liegt-wie-shop-basket-addarticle-checkbasketforarticle/64494/2 "2020-02-05T12:51:18Z")

</div>

Hey,

hier:&nbsp;[https://github.com/shopware/platform/tree/fb4bc791e185512bfde8cd0ea462b0cf527cf82f/src/Core/Checkout/Cart/Event](https://github.com/shopware/platform/tree/fb4bc791e185512bfde8cd0ea462b0cf527cf82f/src/Core/Checkout/Cart/Event)

Im Basis Controller ist jedoch die LineItem-ID = die Produkt-ID wenn mich nicht alles täuscht, um das selbe Produkt mehrmals in den WK zu legen müsste man einen eigenen Controller schreiben, welches eine Random-ID für das LineItem hinterlegt.

Die Bestellungübersicht im Backend ist da auch falsch, man kann dort das Produkt anzeigen lassen, für den Router wird jedoch die LineItem-ID und nicht die Reference-ID verwendet. Bin aber imo zu beschäftigt um Bugs zu melden. 😛

---

<div class="post-metadata">

**Author:** ![neonlines](https://avatars.discourse-cdn.com/v4/letter/n/c57346/32.png) [@neonlines](https://forum.shopware.com/u/neonlines)\
**Post date:** [5. Februar 2020 um 12:58 UTC](https://forum.shopware.com/t/prufen-ob-artikel-bereits-im-warenkorb-liegt-wie-shop-basket-addarticle-checkbasketforarticle/64494/3 "2020-02-05T12:58:51Z")

</div>

Hi Moorleiche, danke.

Was meinst du mit dem Github-Link? Das Event kannte ich schon, siehe meinen zweiten Absatz 🙂

LineItem-ID = die Produkt-ID - das ist interessant, so funktioniert das also. Hast du noch einen Tipp, wie so eine Random-ID dann erzeugt werden kann?

---

<div class="post-metadata">

**Author:** ![Moorleiche](https://avatars.discourse-cdn.com/v4/letter/m/6f9a4e/32.png) [@Moorleiche](https://forum.shopware.com/u/Moorleiche)\
**Post date:** [5. Februar 2020 um 12:59 UTC](https://forum.shopware.com/t/prufen-ob-artikel-bereits-im-warenkorb-liegt-wie-shop-basket-addarticle-checkbasketforarticle/64494/4 "2020-02-05T12:59:54Z")

</div>

[https://github.com/shopware/platform/blob/fb4bc791e185512bfde8cd0ea462b0cf527cf82f/src/Storefront/Controller/CartLineItemController.php#L251](https://github.com/shopware/platform/blob/fb4bc791e185512bfde8cd0ea462b0cf527cf82f/src/Storefront/Controller/CartLineItemController.php#L251)

Hier die ID-Ändern.

[https://github.com/shopware/platform/blob/6.1/src/Storefront/Resources/views/storefront/page/product-detail/buy-widget-form.html.twig#L44](https://github.com/shopware/platform/blob/6.1/src/Storefront/Resources/views/storefront/page/product-detail/buy-widget-form.html.twig#L44)

Wahrscheinlich der einfachere Weg -\> das Produkt über ein Freitextfeld als `stackable` markieren. Für die markierten Produkte&nbsp; das Template hier ändern:

zu

weiß nicht ob md5(date()) im Twig geht, aber hier muss auf jeden Fall ein random Hash rein, keine Produkt-ID

---

<div class="post-metadata">

**Author:** ![neonlines](https://avatars.discourse-cdn.com/v4/letter/n/c57346/32.png) [@neonlines](https://forum.shopware.com/u/neonlines)\
**Post date:** [5. Februar 2020 um 13:02 UTC](https://forum.shopware.com/t/prufen-ob-artikel-bereits-im-warenkorb-liegt-wie-shop-basket-addarticle-checkbasketforarticle/64494/5 "2020-02-05T13:02:48Z")

</div>

In Ordnung, danke. Das wird probiert.
