[Endast SaaS]{class="badge positive" title="Gäller endast Adobe Commerce as a Cloud Service- och Adobe Commerce Optimizer-projekt (SaaS-infrastruktur som hanteras av Adobe)."}

Lägg till filer i produkter

Adobe Commerce as a Cloud Service har stöd för en produktattributindatatyp som gör att handlare kan bifoga filer - t.ex. PDF-filer, handböcker, certifikat och datablad - direkt till produkter. Filerna lagras i Amazon S3-medielagring och kan nås via butiken via GraphQL eller genom integreringar med REST API.

Det finns tre sätt att överföra filer till produktfilattribut:

  • Administratörsgränssnitt - Överför filer manuellt på produktredigeringssidan.
  • REST API - Överför filer via REST API med hjälp av S3-försignerade URL:er.
  • Produktimport - Importera flera filer samtidigt genom att ange externa URL:er i CSV.

Förutsättningar

Innan du överför filer måste du skapa ett filattribut och tilldela det till en attributuppsättning.

Överför filer via administratören

När du har skapat ett filattribut och tilldelat det till en attributuppsättning kan du överföra filer direkt från produktredigeringssidan.

  1. Gå till > på sidofältet Catalog Admin Products.

  2. Öppna den produkt du vill redigera.

  3. Leta reda på filattributsfältet och klicka på Upload för att välja en fil.

Knappen Överför fil i administratören {width="600" modal="regular"}

  1. Klicka på Save.

Om du vill ersätta en fil tar du bort den befintliga filen och överför en ny. Den överförda filen lagras i Amazon S3-medielagring.

Överför via REST API

Använd det S3-försignerade URL-flödet för att överföra filer programmatiskt via REST API. Den här processen fungerar på samma sätt för produktfilattribut som för andra medietyper som kategoribilder och kundattributfiler.

Processen består av fyra steg:

  1. Anropa POST V1/media/initiate-upload med filnamnet och media_resource_type för produktfilattribut.
  2. Använd den returnerade försignerade URL:en för att PUT filen direkt till Amazon S3.
  3. Ring POST V1/media/finish-upload för att bekräfta överföringen.
  4. Tilldela den returnerade nyckeln till produktens filattribut genom PUT /V1/products/{sku} och skicka nyckeln som anpassat attributvärde.

Överför via produktimport

Du kan bifoga flera filer till produkter samtidigt med import-API:t eller gränssnittet för administratörsimporten. Produktfilattribut stöder endast import från externa URL:er, vilket följer samma tillvägagångssätt som metod 2 för import av produktbilder. Commerce hämtar filen från den angivna URL:en och sparar den i medielagring i S3.

NOTE
Det går inte att importera filer från en lokal serversökväg (metod 1) i Adobe Commerce as a Cloud Service eftersom det inte finns någon direkt filsystemåtkomst.

Ange URL-adressen i en dedikerad kolumn

Använd attributkoden som CSV-kolumnrubrik och den fullständiga URL:en som värde. Om attributkoden till exempel är file_upload ser CSV-filen ut så här:

sku,name,file_upload
ADB112,"My Product",https://example.com/files/manual.pdf

Ange URL:en i additional_attributes

Du kan även inkludera filattributet i kolumnen additional_attributes:

sku,name,additional_attributes
ADB112,"My Product",file_upload=https://example.com/files/manual.pdf

I båda fallen måste URL:en vara tillgänglig för alla, och filtillägget och filstorleken måste uppfylla de konfigurerade begränsningarna.

Hämta filer via GraphQL

I Adobe Commerce as a Cloud Service skickar katalogtjänstens GraphQL-slutpunkt produktdata. Filattribut visas i fältet attributesProductView, där value innehåller den fullständiga offentliga URL:en till filen:

{
  products(skus: ["ADB112"]) {
    sku
    name
    attributes(roles: []) {
      name
      label
      value
    }
  }
}

Svaret innehåller filattributet med dess offentliga URL:

{
  "data": {
    "products": [
      {
        "sku": "ADB112",
        "name": "Example product",
        "attributes": [
          {
            "name": "file",
            "label": "FILE",
            "value": "https://<host>/media/catalog/product_file/manual.pdf",
          }
        ]
      }
    ]
  }
}
NOTE
Frågan kräver rubrikerna Magento-Website-Code och Magento-Store-View-Code. Mer information finns i frågan om katalogtjänstprodukter.

Hämta filer via REST API

När en produkt hämtas via REST API (GET /V1/products/{sku}) visas filattribut i arrayen custom_attributes med filnamnet som värde:

{
  "custom_attributes": [
    {
      "attribute_code": "file_upload",
      "value": "manual_7aa0b2d63f6d3dbf.pdf"
    }
  ]
}
recommendation-more-help
0961bf7c-1df8-4da1-8be1-cb5465eed8fb