首頁  >  問答  >  主體

如何使用Admin API在Shopware 6中建立帶有媒體的產品?

如何使用 Shopware 6 Admin API PHP SDK 創建帶有媒體的產品?

Shopware 6 管理 API PHP SDK

我知道如何使用以下程式碼片段建立產品。

$productRepository->create([
    'id' => Uuid::randomHex(),
    'name' => 'New Product',
    'taxId' => $product->taxId,
    'price' => $product->price,
    'productNumber' => $product->productNumber . random_int(10, 1000),
    'stock' => $product->stock,
    'media' => $product->media, //Not working
], $context);

以及如何從包含以下程式碼片段的 URL 上傳媒體。

$mediaService->uploadMediaFromUrl($mediaId, $url, 'jpg', 'test-media');

但是我如何將媒體加入產品?

P粉715228019P粉715228019308 天前454

全部回覆(1)我來回復

  • P粉399090746

    P粉3990907462024-01-08 22:48:34

    media 關聯是 product_media 實體的集合,作為到 media 實體的對應。上傳檔案以根據網址建立 media 實體後,您可以在建立產品時使用該 ID 建立 product_media 對應。

    $mediaService->uploadMediaFromUrl($mediaId1, $url, 'jpg', 'foo');
    $mediaService->uploadMediaFromUrl($mediaId2, $url, 'jpg', 'bar');
    
    $productRepository->create([
        // ...
        'media' => [
            [
                'position' => 1,
                'mediaId' => $mediaId1,
            ],
            [
                'position' => 2,
                'mediaId' => $mediaId2,
            ],
        ],
    ], $context);
    

    回覆
    0
  • 取消回覆