Guide til import af produkter

I denne artikel:


     

    Introduktion

    Med en produktimport er det muligt at oprette og opdatere mange produkter på én gang ved at indlæse en tekstfil i shoppen. I denne artikel vil vi vise hvordan en importfil er opbygget og hvad der skal til for at lave en succesfuld produktimport. Artiklen er samtidigt en grundbog til hvordan man arbejder med import og eksport af data i shoppen.

    Lær at forstå, redigere og fejlsøge importfiler.

     

    Sådan fungerer det

    Produktimport foregår i korte træk ved, at man importerer en tekstfil med produktdata. Produktdataene består af produkttitler, beskrivelser, lagerantal, priser osv. og er inddelt således i filen, at shoppen forstår hvor de forskellige informationer hører til i den produktoprettelse eller opdatering af eksisterende produkter, der foregår under importen.

    For at shoppen kan skelne imellem produkttitler, priser osv. skal importfilen forsynes med nogle labels som shoppen allerede er bekendt med i forvejen. Disse labels er navne på datafelter i shopsystemet og består af en tekststreng der benyttes til at identificere indholdet i importfilen. Hvis datafelterne i filen ikke matcher de datafelter som shoppen kender, vil importen enten fejle eller dataene blive ignoreret. Så det er vigtigt at filen indholder de korrekte betegnelser, og den letteste måde at opnå dette på, er ved at eksportere en fil fra shoppen. Filen kan herefter tilpasses med det indhold man ønsker at importere.

    Filformater

    Der findes 2 filformater som shoppen understøtter til import/eksport. Det ene er en kommasepareret fil, også kaldet en CSV-fil, (f.eks. import.csv) og det andet en XML-fil (f.eks. import.xml). Begge er tekstfiler hvor indholdet er struktureret forskelligt. I denne gennemgang benytter vi kommaseparerede filer, da det er det ældste og mest populære format til formålet. Men du kan selvf. benytte XML-formatet hvis du foretrækker det, datafelterne er de samme uanset filtypen.

     

    Sådan gør du

    Start med at eksportere et produkt med henblik på at opdatere produktet via import. Denne øvelse vil danne grundlaget for at arbejde med import i shoppen. Hvis din shop er i produktion, altså er live med handlende kunder, så kan du oprette et deaktiveret produkt til at teste din import med. Du kan også rekvirere en ny demoshop ved os, så du kan eksperimentere uden at være bange for at ødelægge noget.

    Bemærk: Med en import er det muligt foretage gennemgribende ændringer meget hurtigt, så man skal selvf. have dette i baghovedet når man importerer og laver en potentiel masseopdatering af sin shop, hvilket er på eget ansvar. Men dette skal dog ikke afskrække dig fra arbejde med import, da det er et smart værktøj med et stort potentiale. Husk at du kan foretage en eksport som backup af evt. data før du begynder at ændre noget via import.

    Når du har oprettet dit testprodukt skal du lægge mærke til produktets ID som du finder i produktoversigten under Produkter > Alle. ID'et kan nemlig benyttes til kun at eksportere det pågældende produkt, så du ikke får andre data med ud:

    Klik på Eksportér for at gå til eksport siden:

    Eksporten er opdelt i 3 trin. Vi står nu på første side og sikrer os at dropdown listen Vælg data står til Produkter og varianter, samt at radioknapperne Vælg format er sat til CSV fil. Klik herefter på Næste:

    I dette trin har vi mulighed for at vælge hvilke datafelter vi vil eksportere:

    1. Klik på plusikonet ud for Generelt så træmenuen foldes ud, og sæt flueben ved Titel, Dansk.
    2. Klik på plusikonet ud for Priser så træmenuen foldes ud, og sæt flueben ved Pris.
    3. Indsæt produkt ID som vi aflæste tidligere i både Start og Slut feltet.
    4. Klik på Næste for at gå til trin 3.

    Klik på Download for at udføre eksporten og downloade filen til din computer:

    Åben den eksporterede fil i et program som Excel, OpenOffice eller LibreOffice. Her har vi åbnet filen i Excel og kan se produktets ID, titel og pris:

    Hvis vi åbner filen i en teksteditor, i dette tilfælde Notesblok, ser den således ud:

    Som vi kan se er filen separeret med semikolon (omend man overordnet kalder det en kommasepareret fil). Semikolonet benyttes til at afgrænse indholdet og fortælle shoppen hvilket datafelt en given streng svarer til. Vi kan også se at linjeskift har en betydning, da de i dette eksempel fortæller shoppen hvor et produkt stopper og en nyt begynder. En anden ting der er interessant er den øverste linje PRODUCTS, der fortæller shoppen at der er tale om en produktimport. Herefter kan vi se alle datafelternes navne indsat i den rækkefølge som dataene nedenunder er indsat med. På den måde ved shoppen hvad der er hvad, og det samme gør Excel og andre programmer der kan læse kommaseparerede filer.

     

    Her er samme produkt tidligere, nu med varianter tilføjet. Varianterne vises som tilhørende linjer under produktet (Small, Medium, Large):

    Hvis vi åbner filen i en teksteditor ser den således ud:

    Man kan se hvordan de ekstra variantdata påvirker strukturen i tekstfilen og få en forståelse for hvordan formatet fungerer. Man kan sammenligne datafelternes navne (i anden linje) med en indholdsfortegnelse der viser hvilken rækkefølge dataene er opdelt i som illustreret med farverne her:

    Fordi datafelterne (i anden linje) dikterer rækkefølgen af produktdataene nedenunder er det underordnet om f.eks. titlen kommer før produkt ID osv. så længe at rækkefølgen i produktdataene følger datafelternes placering fra venstre mod højre (som i eksemplet herover).

     

    Produktopdatering via import

    Hvis vi nu vil ændre prisen på vores produkt via en import, så kan vi blot ændre tallene i vores eksempel, gemme filen og importere den igen. Vi anbefaler at man redigerer filen i Excel frem for direkte i tekstfilen, da man let kan komme til at miste overblikket med større CSV-filer.

    Her ændrer vi prisen på varianten Small fra 299,99 til 249,99 og gemmer filen:

    Herefter importerer vi filen:

    1. Gå til Produkter > Alle og klikke på knappen Importér:

    2. Klik på Gennemse og vælg importfilen fra din computer:

    3. Klik herefter på Importer:

    4. Herefter kan vi se at de 4 linjer i importen er gennemført:

    Hvis vi redigerer produktet i shoppens administration, kan vi se at produktvarianten har modtaget opdateringen af prisen:

    Så snart vi er igang med at redigere produktdata som vi lige har gjort med dette eksempel, hvor vi ændrer feltet PRICE, så arbejder vi med shoppens datafelter. Det betyder også at evt. afklaringer af hvordan man tilføjer eller formaterer teksten i bestemte datafelter kan aflæses i denne liste. Tag evt. et kig i listen og søg på PRICE i din browser, for at se sammenhængen eksemplet ovenfor.

    Variant ID ved opdatering og oprettelse

    Bemærk at vi i feltet VARIANT_ID har indsat ID på de varianter som produktet allerede har tilknyttet (vi kan se disse på produktet i shoppens administration). Hvis der var tale om en produktoprettelse ville vi derimod indsætte værdien 0 i VARIANT_ID, for at varianterne bliver oprettet med et nyt ID på produktet. Dette betyder ikke at de eksisterende variantdata, Small, Medium, Large, bliver oprettet igen under varianttyper, da systemet automatisk matcher titlerne med eksisterende variantdata og benytter disse hvis de findes. VARIANT_ID benyttes til, på individuelle produkter, at identificere variantkombinationer tilhørende det pågældende produkt og er altså ikke et globalt variant ID.

     

    Produktoprettelse via import

    I eksemplet ovenfor har vi opdateret et produkt via import. I dette afsnit vil vi, med den kendskab vi har tilegnet os via øvelsen fra tidligere, lave en produktoprettelse via import.

    Hvis vi kigger i oversigten over datafelter, så kan vi se at vi har en række påkrævede felter. Og som du måske allerede ved, hvis du har oprettet produkter i shoppens administration, så skal der tildeles en produktkategori ved produktoprettelse. Dette gælder også ved import.

    Vi kan samtidig læse at feltet PRODUCT_ID er påkrævet, men ikke at det behøver at indeholde en værdi, det skal bare være tilstede i filen. Og hvis vi undlader at tilføje en værdi, eller tilføjer et ID som endnu ikke findes i shoppen oprettes produktet under import.

    Vi kan altså modificere vores eksporterede fil fra tidligere til at se således ud:

    I feltet CATEGORY_ID har vi indsat ID'et for den produktkategori som vi ønsker produktet skal tilhøre. Du finder dine produktkategoriers ID ved at gå til Produkter > Produktkategorier og aflæse det i listen (du kan også eksportere dine produktkategorier får at få alle ID'er ud).

    Produktet er nu importeret med de værdier vi har sat, men det er ikke aktivt på shoppen:

    Lad os tilføje et par datafelter mere og opdatere produktet så det er aktivt og på lager:

    Bemærk at vi har tilføjet produktets id PRODUCT_ID for at opdatere produktet, frem for at oprette endnu et produkt.

    Produktet er nu aktivt og på lager:

    Men vi mangler et produktbillede og en beskrivelse på vores nye produkt:

    Importen af billeder fungerer således, at eksisterende billeder (altså billeder der allerede er uploaded til shoppen) kan linkes direkte til produktet. Og hvis man indsætter et fuldt link til et billede på en anden lokation (website, server mv.) så kopieres dette billede til shoppen og benyttes efterfølgende på produktet. Se PICTURES i oversigten.

    Lad os tilføje et par datafelter mere og opdatere produktet så det får et billede og en produktbeskrivelse:

    Da vi kun har 1 site på vores shop nøjes vi med at tilføje sprogkoden i vores datafelt DESCRIPTION_SHORT_DK. Du kan aflæse sprogkoden under Indstillinger > Sprog og domæner.

    Produktet er nu opdateret med billede og kort beskrivelse:

     

    Variantprodukt oprettelse via import

    Når vi vil oprette et variantprodukt, så har vi faktisk berørt princippet længere oppe i artiklen, da vi oprettede og opdaterede vores produkt med varianter. Dog skal vi være opmærksomme på, at varianter kræver et eksisterende produkt ID når vi opretter et produkt med varianter. Og det løser vi ved at angive et produkt ID, der endnu ikke eksisterer.

    For at finde det højeste produkt ID kan vi sortere vores produkter i ID-kolonen under Produkter > Alle:

    I vore shop er det højeste produkt ID 23. Vi skal derfor benytte numre der er højere end 23 hvis vi vil lave en produktoprettelse med varianter.

    Herefter kan vi tilføje det nye produkt ID i vores import, således:

    Vi kan herefter importere vores produkt og se at linjerne er blevet oprettet:

    Hvis du f.eks. modtager en fil med produkter fra en leverandør, som du ønsker at oprette i shoppen, så er det sandsynligt at datafelterne har nogle andre navne og at filen er formateret anderledes end hvad shoppen forventer. Til dette formål har shoppen en importfunktion der kan koble datafelterne sammen, så dataene bliver oprettet korrekt. Vi har lavet en guide netop til dette, som du kan læse her:

    Du kan selvf. også rette felterne manuelt i Excel eller direkte i en teksteditor, det står frit for.

    I vores gennemgang har vi undladt at oprette produktkategorier (som er en separat import), tilføje felter til søgemaskineoptimering, rabatter osv. Men princippet er det samme som det vi netop har gennemgået. Husk at du altid kan foretage en eksport, hvis du er i tvivl omkring hvordan et datafelt skal formateres. Og husk ligeledes at tjekke vores liste med datafelter for produkter og produktkategorier for at få mere information omkring formatering af indholdet.

     

    Værd at vide

    • VARIANT_ID benyttes til at identificere variantkombinationer tilhørende det pågældende produkt og er altså ikke et globalt variant ID. Ved opdatering af produktet indsættes ID på eksisterende varianter som produktet allerede har tilknyttet, i feltet VARIANT_ID. Hvis der var tale om en produktoprettelse ville vi derimod indsætte værdien 0 i VARIANT_ID, for at varianterne bliver oprettet med et nyt ID på produktet. Dette betyder ikke at de eksisterende variantdata (f.eks. Small, Medium, Large) bliver oprettet på ny under varianttyper, da systemet automatisk matcher titlerne med eksisterende variantdata og benytter disse hvis de findes.
    • Importerede filer må ikke overstige 10MB.
    • CSV-filer skal være i ISO-8859-1 tegnsæt, også kendt som Windows semikolonsepareret (Wikipedia). Bemærk at import i andre CSV-formater kan ændre tekster med æ, ø og å, hvis tegnsættet ikke er ISO-8859-1. Du kan læse mere om de forskellige formater her.
    • XML filer skal være i UTF-8 tegnsæt (Unicode). Du kan læse mere om de forskellige formater her.

     

    Anbefalede apps

    Visuel struktureret redigering (regneark)

    Tekstredigering

    • Notepad++ (hurtig redigering og fejlsøgning)
    • Sublime Text (hurtig redigering og fejlsøgning)
    • Notesblok (simpel teksteditor, inkluderet med Windows)
    • TextEdit (simpel teksteditor, inkluderet med MacOS)

     

    Skabelonfiler til produktimport

    Som alternativ til selv at foretage en eksport for at danne en skabelonfil, som kan benyttes til at opsætte din egen import, så kan du benytte filerne herunder:

    Skabelonfilerne er baseret på eksempelprodukter i vores demoshop.

     

    Nyttige links