# Store Api | CustomField Problem mit store-api nach der Anfügung der Media Entity Daten per Subsriber

**URL:** <https://forum.shopware.com/t/store-api-customfield-problem-mit-store-api-nach-der-anfuegung-der-media-entity-daten-per-subsriber/97008>\
**Category:** Shopware 6 (German)\
**Tags:** programming\
**Created:** [8. November 2022 um 12:49 UTC](https://forum.shopware.com/t/store-api-customfield-problem-mit-store-api-nach-der-anfuegung-der-media-entity-daten-per-subsriber/97008 "2022-11-08T12:49:58Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![lucas.baerlocher1](https://avatars.discourse-cdn.com/v4/letter/l/54ee81/32.png) [@lucas.baerlocher1](https://forum.shopware.com/u/lucas.baerlocher1)\
**Post date:** [8. November 2022 um 12:49 UTC](https://forum.shopware.com/t/store-api-customfield-problem-mit-store-api-nach-der-anfuegung-der-media-entity-daten-per-subsriber/97008/1 "2022-11-08T12:49:58Z")

</div>

Hallo zusammen, ich hoffe euch gehts gut, ich für meinen Teil bin gerade ein wenig am verzweifeln, folgendes ist mein Problem:

Ich habe eine neue Media Entity per CustomFields zu der Produktentity hinzugefügt.  
Nun habe ich per Subsriber wie in der Dokumentation angegeben die Media entity geladen und alle infos angefügt:

```auto
foreach($customFields as $name => $value) {
                    if ($name !== 'custom_media' || empty($value)) {
                        continue;
                    } else {
                        $context = $event->getContext();
                        // search the entity via the repository here
                        /** @var MediaEntity $media */
                        $media = $this->mediaRepository->search(new Criteria([$value]), $context)->first();
                        if($media) {
                            // replace the custom field's value with the actual entity
                            $customFields[$name] = $media;
                        } else {
                            $customFields[$name] = null;
                        }
                    }
}

```

Dies funktioniert überall relativ gut und ich bin zufrieden damit… bis auf den einen fakt das die Produkte in der Store-Api nicht mehr ausgegeben werden. wegen diesem Struct Error:  
`Argument 1 passed to Shopware\\Core\\System\\SalesChannel\\Api\\StructEncoder::encodeStruct() must be an instance of Shopware\\Core\\Framework\\Struct\\Struct, bool given, called in /var/www/html/vendor/shopware/core/System/SalesChannel/Api/StructEncoder.php on line 121`

Ich besuchte also wiedermal den Core (war schon lange nicht mehr da) nun wundere ich mich woran dies liegen kann. Hat da jemand eine idee 🙂

Ich freue mich auf Antworten und danke im vorraus.

Ich lasse auch gerne einen Gutschein springen wenn mir jemand helfen kann ^^

---

<div class="post-metadata">

**Author:** ![abdullah](https://avatars.discourse-cdn.com/v4/letter/a/aeb1de/32.png) [@abdullah](https://forum.shopware.com/u/abdullah)\
**Post date:** [8. November 2022 um 13:22 UTC](https://forum.shopware.com/t/store-api-customfield-problem-mit-store-api-nach-der-anfuegung-der-media-entity-daten-per-subsriber/97008/2 "2022-11-08T13:22:28Z")

</div>

Ich glaube den Customfields kann man keine Entity zuweisen. Hierfür sind ja die Entity Extensions da.

Du kannst aber im Template die Twig Funktion searchMedia() verwenden, um anhand der ID das Media zu laden

> **[Shopware's twig functions](https://developer.shopware.com/docs/resources/references/storefront-reference/twig-function-reference)**

Du iterierst über ein Array. Das kannst du dir sparen und gleich auf das Feld zugreifen, wenn du den Key kennst, was du ja tuest, und dieser extistiert.

---

<div class="post-metadata">

**Author:** ![lucas.baerlocher1](https://avatars.discourse-cdn.com/v4/letter/l/54ee81/32.png) [@lucas.baerlocher1](https://forum.shopware.com/u/lucas.baerlocher1)\
**Post date:** [8. November 2022 um 13:25 UTC](https://forum.shopware.com/t/store-api-customfield-problem-mit-store-api-nach-der-anfuegung-der-media-entity-daten-per-subsriber/97008/3 "2022-11-08T13:25:42Z")

</div>

Ok so i added The url of the Object instead i think that should solve my Problem in the Storefront
