# Left Join von Media inkl. Thumbnails

**URL:** <https://forum.shopware.com/t/left-join-von-media-inkl-thumbnails/47353>\
**Category:** Programmierung\
**Created:** [7. August 2017 um 08:23 UTC](https://forum.shopware.com/t/left-join-von-media-inkl-thumbnails/47353 "2017-08-07T08:23:38Z")\
**Posts on this page:** 6\
**Page:** 1

<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:** [7. August 2017 um 08:23 UTC](https://forum.shopware.com/t/left-join-von-media-inkl-thumbnails/47353/1 "2017-08-07T08:23:38Z")

</div>

Ähm doofe Frage, ich hol mir die Auflösung von MediaId zu den Daten über nen Left Join in meiner Model Repo:

```
->leftJoin('a.coverImage', 'coverImage')

```

Was zu diesem Ergebnis führt:

```
		"coverImage": {
			"id": 801,
			"albumId": 4,
			"name": "FS_2017_Cover",
			"description": "",
			"path": "media\/image\/FS_2017_Cover.jpg",
			"type": "IMAGE",
			"extension": "jpg",
			"userId": 1,
			"created": {
				"date": "2017-07-06 00:00:00.000000",
				"timezone_type": 3,
				"timezone": "Europe\/Berlin"
			},
			"fileSize": 1439391,
			"width": 1181,
			"height": 1683
		},

```

gut, der Pfad ist nur virtuell. tatsächlich liegt die Datei:

```
vagrant@shopware:~/www/shopware/media$ find . -name "FS_2017_Cover*.jpg"
./image/73/36/ee/FS_2017_Cover_120x120.jpg
./image/11/d9/15/FS_2017_Cover_140x140.jpg
./image/b8/3a/5f/FS_2017_Cover_512x512.jpg
./image/3a/65/54/FS_2017_Cover.jpg

```

Nun meine Frage: Wie kann ich mir gleich die Thumbnails mitliefern lassen? Ein Thumbnail liegt unter:

media/image/73/36/ee/FS\_2017\_Cover\_120x120.jpg

aber wenn ich es Versuch per “virtuellen pfad” aufzurufen media/image/FS\_2017\_Cover\_120x120.jpg bekomm ich nen 404.

&nbsp;

---

<div class="post-metadata">

**Author:** ![IFF](https://avatars.discourse-cdn.com/v4/letter/i/c37758/32.png) [@IFF](https://forum.shopware.com/u/IFF)\
**Post date:** [7. August 2017 um 08:34 UTC](https://forum.shopware.com/t/left-join-von-media-inkl-thumbnails/47353/2 "2017-08-07T08:34:11Z")

</div>

[https://forum.shopware.com/search?Search=shopware\_media.media\_service&sLanguage=1](https://forum.shopware.com/search?Search=shopware_media.media_service&sLanguage=1)

&nbsp;

---

<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:** [7. August 2017 um 08:45 UTC](https://forum.shopware.com/t/left-join-von-media-inkl-thumbnails/47353/3 "2017-08-07T08:45:28Z")

</div>

Heißt nach dem Query per Schleife jedes Thumbnail per mediaService::getUrl manuell hinzufügen? -\_-

---

<div class="post-metadata">

**Author:** ![IFF](https://avatars.discourse-cdn.com/v4/letter/i/c37758/32.png) [@IFF](https://forum.shopware.com/u/IFF)\
**Post date:** [7. August 2017 um 08:49 UTC](https://forum.shopware.com/t/left-join-von-media-inkl-thumbnails/47353/4 "2017-08-07T08:49:19Z")

</div>

So wie in den vielen Beispielen ersichtlich vermutlich ja.

---

<div class="post-metadata">

**Author:** ![simkli](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/simkli/32/13124_2.png) [@simkli](https://forum.shopware.com/u/simkli)\
**Post date:** [7. August 2017 um 10:10 UTC](https://forum.shopware.com/t/left-join-von-media-inkl-thumbnails/47353/5 "2017-08-07T10:10:48Z")

</div>

Nein es geht besser. Nutze den MediaService aus dem **StoreFrontBundle** und nicht den aus dem MediaBundle. Da gibt es eine Batch Funktion [getList(…)](https://github.com/shopware/shopware/blob/5.3/engine/Shopware/Bundle/StoreFrontBundle/Service/Core/MediaService.php#L101).

Dann einfach:

```
$mediaService->getList([12,14,16]); // media IDs

```

Da bekommst du dann MediaStructs zurück, welche gleich Thumbnails etc. enthalten. ([shopware/Media.php at 5.3 · shopware/shopware · GitHub](https://github.com/shopware/shopware/blob/5.3/engine/Shopware/Bundle/StoreFrontBundle/Struct/Media.php) )

Viele Grüße

---

<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:** [7. August 2017 um 10:59 UTC](https://forum.shopware.com/t/left-join-von-media-inkl-thumbnails/47353/6 "2017-08-07T10:59:32Z")

</div>

Auch nicht schlecht 🙂 Werd ich gleich mal nachschauen. Genau das was ich suchte, nur dass in deiner Antwort @simkli der zweite Parameter (Kontext) für getList fehlt.
