Data

Modifikatorer

Ændr data efter synkronisering.
Backend in the Clerk.io backend

Overblik #

Modifikatorer lader dig ændre data efter synkronisering, uden at du skal ændre dit datafeed eller involvere en udvikler. Modifikatorer understøtter i øjeblikket Products, Categories, Customers og Pages.

Modifikatorer evalueres fra top til bund, så rækkefølgen de optræder i på listen har betydning. Eksemplerne nedenfor bruger produktdata, men den samme modifikator-funktion kan bruges med de andre understøttede datatyper.

Der er to måder at oprette en modifikator på: ved at bruge AI Modifiers, som er den anbefalede metode, eller vælge en af de standard modifikatortyper for enklere, foruddefinerede transformationer.

Modifikator rækkefølge #

Indstil rækkefølgen, når en modifikator afhænger af en ændring foretaget af en anden. Clerk.io evaluerer listen fra top til bund.

I Data > Modifiers, grib fat i en modifikators prikkede håndtag og træk den til den ønskede position. En stiplede boks viser, hvor den lander. Slip rækken for at flytte den.

Du kan også fokusere en modifikatorrække og trykke Alt + ↑ eller Alt + ↓ for at flytte den med tastaturet. Skærmlæsere annoncerer flytningen.

Test sekvensen i Before & After preview før du klikker på Save & Run for at anvende den på dit katalog.

AI Modifiers #

AI Modifiers er standarden og den anbefalede måde at oprette modifikatorer på. I stedet for at konfigurere individuelle felter og regler, beskriver du blot hvad du ønsker modifikatoren skal gøre i almindeligt sprog, og AI’en genererer en Python-funktion, der tilsvarende transformerer dine produktdata.

Denne tilgang er langt mere fleksibel end standard modifikatortyperne. Du kan beskrive kompleks logik, kombinere flere betingelser, beregne nye værdier ud fra eksisterende attributter og håndtere edge cases — alt sammen uden at skrive en eneste linje kode selv.

  1. Klik på Add Modifier og vælg AI Modifier som type (den er forvalgt som standard).
  2. På modifikatorsiden klik på knappen for at åbne Ask sidepanelet.
  3. I Ask sidepanelet, beskriv hvad modifikatoren skal gøre. Vær så specifik som muligt omkring logikken, de involverede attributter og det forventede output.
  4. AI’en genererer en Python-funktion baseret på din beskrivelse.
  5. Test modifikatoren med Before & After preview før du gemmer.

Eksempel prompts:

  • “Opret en attribut kaldet variant_stock_percentage der viser hvor mange af et produkts varianter der aktuelt er på lager, som en procentdel mellem 0 og 100.”
  • “Sæt availability til In stock hvis stock er større end 0, ellers sæt den til Out of stock.”
  • “Opret en discount_percentage attribut ved at beregne procentforskellen mellem list_price og price, afrundet til nærmeste heltal.”
  • “Estimer profit ved at bruge disse produktkategori-margener: Clothing 50%, Shoes 40%, Accessories 60%, Homeware 35%, og Electronics 20%. Beregn profit pr. enhed som price × margin / 100. Bevar eksisterende numeriske profitværdier og lad andre kategorier være uændrede.”

Den Python-funktion, som AI’en genererer, er skrivebeskyttet — du kan ikke redigere den direkte. For at ændre logikken, fortsæt samtalen i Ask sidepanelet og lad den opdatere funktionen. Ask Clerk.io kan undersøge din butik og opsætning før den opretter modifikatoren, hvilket hjælper AI’en med at forstå konteksten for din anmodning.

Standard modifikatortyper #

For enklere transformationer er standard modifikatortyper tilgængelige. Disse dækker et sæt foruddefinerede handlinger og er nemme at konfigurere, men de er mere begrænsede i muligheder sammenlignet med AI Modifiers.

Alle standard modifikatorer har et if inputfelt. Hvis en instruktion tilføjes, udføres modifikatoren kun på produkter hvor udsagn evalueres til sandt.

TypeEffekt
Create new attributeTilføjer en attribut til alle produkter
Delete attributeFjerner en attribut på alle produkter
Delete productFjerner produktet helt
Update attributeOpdaterer en attribut vha. et regex mønster
Change attribute typeÆndrer typen af en attribut på alle produkter
Split attribute by separatorDeler en streng op i en liste ud fra separator
Append valueTilføjer en værdi til en eksisterende listeattribut
Evaluate an expressionEvaluerer et matematisk udtryk i en attribut
Capitalize valueFormaterer en streng til stort begyndelsesbogstav
Make value uppercaseFormaterer en streng til kun store bogstaver
Make value lowercaseFormaterer en streng til kun små bogstaver
Create formatted attributeOpretter en ny attribut ved at formatere eksisterende data

Her er en beskrivelse af hver standard modifikatortype.

Create new attribute #

Tager en new_value der viser hvilken værdi attributten skal sættes til, kan bruges både som ny attribut eller til at overskrive en eksisterende.

Delete attribute #

Sletter den angivne attribut fra alle produkter, eller bestemte ud fra et if udsagn.

Delete product #

Sletter de angivne produkte(r) ud fra et if udsagn.

Update attribute #

Denne modifikator bruger regex sammen med Python biblioteket. Hvis regex er nyt for dig, overvej at bruge AI Modifiers i stedet — de kan håndtere samme transformationer uden regex-kendskab.

Update tager attributten regexp, som er et regex-udtryk der matcher dele af attributten og erstatter hver matchende gruppe med indholdet af replace_by. Her er et nyttigt værktøj til at bygge din regex.

Et eksempel på regex kunne være []+ med en replace_by på ’/’, dette vil tage alle steder i attributten, hvor der er flere / i træk og erstatte dem med kun én /. Så https://test//tests bliver til https:/test/tests.

Eksempel #

I dette eksempel vil vi fjerne sidste del af en URL ved hjælp af et regex mønster. Start-URL’en er: https://example.domain/product/153//__example. For at fjerne //__example-delen, kan vi bruge denne regex: \/\/__example.

Da vi bare ønsker at fjerne denne del af URL’en uden at erstatte den med noget andet, lades Replace by-feltet være tomt.

Change attribute type #

Gør det muligt at ændre typen for en attribut. Hvis data fx er et tal og du har brug for at det skal være en streng, kan du bruge dette til at typecaste. Typerne af attributter er: string, int, float og boolean.

Split attribute #

Gør det muligt at splitte en streng op med en separator til en liste af strenge. Som standard splittes med komma hvis ingen separator er angivet.

Eksempel #

Her splitter vi en attribut med kategorier om til en liste: "lineman, chute" til ["lineman","chute"].

Append value #

Lader dig tilføje nye værdier til en eksisterende listeattribut.

Dette kan fx være at tilføje ekstra strenge til en tags attribut eller tilføje en ny kategori til en categories attribut.

Evaluate an expression #

Expression-handlingen evaluerer et matematisk udtryk, som kan indeholde attributter, konstanter og operatorer. Hvis du definerer udtrykket: price * 0.8, vil systemet udregne værdien ved at gange værdien af price-attributten med 0.8, hvilket svarer til en 20% rabat.

Eksempel #

Hvis du skriver i New Value feltet: price * 0.8 og prisen er 100, vil resultatet være 80.

New formatted attribute #

Denne handling opretter en ny attribut baseret på eksisterende data, mens der samtidig kan bruges formatering eller transformation af værdien.

For at referere til en eksisterende attribut, omsluttes dens navn med krøllede parenteser uden mellemrum: {attributeName}.

  • Kopiér en attribut: sæt New Value til {MPN}.
  • Sammenkæd tekst og attributter: € + {price}.

Hvis du skriver mellemrum inden i parenteserne, som { attribute }, vil systemet gemme selve strengen (inklusive parenteser), ikke attributværdien.

Eksempel #

Du kan kombinere attributter, tilføje præfikser eller suffikser eller ændre visningen af data. For eksempel, for at lave en formateret pris som €100,00, sæt New Value til: € + {price}.

If Statements #

Tilføjer du et udsagn i if feltet, køres kommandoen kun på attributter hvor udsagnet evalueres som sandt.

Tilgængelige operatorer er:

OperatorBetydning
==Matcher alle produkter hvor attributten er ligheden værdien.
!=Matcher alle produkter hvor attributten ikke er ligheden værdien.
>Matcher alle produkter hvor attributten er større end værdien.
>=Matcher alle produkter hvor attributten er større end eller lig værdien.
<Matcher alle produkter hvor attributten er mindre end værdien.
inMatcher et substring i en streng eller et element i en liste
orMatcher hvis x ELLER y er sandt
andMatcher hvis x OG y er sande

Eksempel #

Opret en ny attribut Availability sat til Available, If stock > 0.

Opret attributter ud fra lister #

Et almindeligt use case er at oprette en separat attribut baseret på værdier i en eksisterende liste-attribut. Hvis du for eksempel har en tags attribut, der indeholder værdier som Female, Male og Unisex, kan du lave en dedikeret gender attribut til brug i Search-facetter.

Operatoren in tjekker om en værdi findes i en liste. Syntaksen er:

"value" in attribute_name

For at lave en gender attribut ud fra tags, opsæt flere modifikatorer i rækkefølge:

AttributeNew ValueIf
genderFemale"Female" in tags
genderMale"Male" in tags
genderUnisex"Unisex" in tags

Hver modifikator kører kun hvis dens betingelse er sand. Rækkefølgen har betydning – hvis et produkt har flere matchende tags, bestemmer den sidste matchende modifikator den endelige værdi.

Bemærk: Værdien du tjekker for skal omkranses af anførselstegn (fx "Female"), mens attributnavnet skrives uden anførselstegn (fx tags).

Kombinerede betingelser #

Du kan kombinere flere betingelser ved brug af and og or operatorer.

Match produkter hvor brand er Nike OG lager er større end 0:

brand == "Nike" and stock > 0

Match produkter hvor kategori indeholder shoes ELLER boots:

"shoes" in categories or "boots" in categories

Match produkter med et bestemt tag OG pris over 100:

"premium" in tags and price > 100

Testing & Save #

Før du klikker på Save & Run, som anvender modifikatorerne på hele dit katalog, anbefales det at teste din nye modifikator først. Dette kan du gøre i sektionen See how your modifiers impact your product data.

Her kan du vælge et produkt og se hvordan det påvirkes af modifikatoren med Before & After visualisering.

Du kan inkludere eller ekskludere individuelle modifikatorer fra forhåndsvisningen. Brug Include in preview afkrydsningsfeltet på hver modifikator for midlertidigt at fjerne den fra forhåndsvisningen ved test af et produkt. Dette valg påvirker kun forhåndsvisningen og ikke den faktiske modifikator – alle modifikatorer vil blive anvendt, når du klikker på Save & Run.

Denne side er oversat af en hjælpsom AI, og der kan derfor være sproglige fejl. Tak for forståelsen.