Alle Artikelbilder-IDs auslesen?

        $params = [
            ‚filter‘ => array(
                array(
                    ‚property‘ => ‚name‘,
                    ‚value‘ => ‚artikel‘,
                ),
            )
        ];

 
        $ergebnis3 = $client->get(‚media‘,$params);

 

Hi ich versuche alle Artikelbilder aus den Media auszulesen (um sie anschließend zu löschen). Dabei will ich wirklich nur die MediaID und nur die Medien, die Artikelbilder sind. Andere will ich nicht, da ich die sonst wieder einfügen müsste.

Nun habe ich es versucht wie es oben dran steht und bekomme aber diesen Fehler:

 

Error message: [Syntax Error] line 0, col 58: Error: Expected ‚.‘ or ‚(‘, got ‚name‘

 

Wie muss ich den Filter abwandeln, dass ich nur die Artikelbilder bekomme? (Also deren MediaId)

Schau mal hier:

https://developers.shopware.com/developers-guide/rest-api/api-resource-media/

Hierzu brauchst du die MediaID die über “articles” mit angezeigt wird.

Ein Beispiel mit Artikel 12345:

// per API nach Artikel abfragen, um an die mediaID zu kommen
$out = $client->get(‘articles/12345’);

// im Array ein Bild gefunden
$mediaId = $out[‘images’][0][‘mediaId’];

// Bildinfo zur mediaId abholen
$img = $client->get(‘media/’.$mediaId);

// und dann eben die Thumbnails löschen + IDs aus DB usw. usw.
 

Hatte dasselbe problem auch schon. Hier das Antwort:  https://forum.shopware.com/discussion/44969/rest-api-media-resource-abfragen-mit-filter

Mit deinem Syntax:

$params = [
            'filter' => array(
                array(
                    'property' => 'media.albumId',
                    'value' => '-1',
                ),
            )
        ];

Also alle Media wovon das AlbumId == -1 (-1 entspricht die Artikel).