Individualisiertes produkt nur über extra Controller realisierbar ?

Ich bin gerade dabei ein neues Plugin zu schreiben mit dem der Kunde einem Produkt einen benutzerdefinierten Text mitgeben kann.

was ich bereits versucht habe:

  • ein Produkt nach dem hinzufügen von custom fields per add Funktion in den warenkorb zu schieben -> gleichhe produktID = egal wie das field aussieht, es wird immer beim gleichen produkt die quantity hochgezählt. (problem liegt dabei im „cartItemAddRoute“)

    // in der add function der cartItemAddRoute.php
    foreach ($items as $item) {
    $alreadyExists = $cart->has($item->getId());
    $cart->add($item);
    $this->eventDispatcher->dispatch(new LineItemAddedEvent($item, $cart, $context, $alreadyExists));
    }

  • dann habe ich noch versucht den CartService zu editieren und die add auf meine anforderungen anzupassen, allerdings kam es daben denn zu einigen Fehlern ohne wirkliche debuginfo

… also…:

der bisher einige zielführende weg war es, einen komplett neuen controller zu schreiben

dazu musste ich allerdings grundlegend die CartService Route umgehen, falls das requestete produkt einen text beinhaltet.

-> problem bei der ganzen sache: hoher maintaining aufwand…

hat jemand eine grundlegend bessere idee wie ich die sache lösen könnte oder wenigstens den cartService nicht komplett umgehen muss?