[Premium]{class="badge positive" title="Se vad som ingår i Target Premium."}
Anpassade entitetsattribut
Använd anpassade entitetsattribut med ett och flera värden i Adobe Target Recommendations om du vill definiera ytterligare information om objekt i katalogen.
Gränser limits
Du kan inkludera upp till 100 anpassade entitetsattribut för att definiera ytterligare information om objekt i katalogen. Du kan till exempel skapa ett anpassat attribut med namnet entity.genre
för att definiera en bok eller film. Eller så kan en biljettförsäljare skapa attribut för en eventplats som inkluderar en sekundär utförare, till exempel ett besöksteam i ett idrottsevenemang eller en öppningsakt på en konsert.
Den maximala längden för anpassade attribut för en entitet med ett värde är 15 000 tecken (för UTF-8-kodade språk med en eller två byte, som engelska och andra latinska skriftspråk) eller 10 000 tecken (för UTF-8-kodade språk med tre byte som kinesiska, japanska och koreanska).
Anpassade attribut för entiteter med flera värden får inte innehålla fler än 500 värden. Varje enskilt värde är begränsat till 100 tecken. Det totala antalet tecken i alla värden måste uppfylla begränsningarna för den maximala längden för anpassade entitetsattribut med ett värde (se ovan).
Anpassade värden för entitetsattribut section_313331A9F8194A89B5EDD89363018651
Anpassade entitetsattribut kan innehålla ett eller flera värden. Entitetsattributvärden visas i produktvyn.
Ett anpassat entitetsattribut med ett enda värde formateras på samma sätt som ett fördefinierat entitetsattribut med ett enda värde:
entity.genre=genre1
Ett anpassat entitetsattribut med flera värden måste skickas som en giltig JSON-matris:
entity.genre=["genre1", "genre2"]
Exempel på giltiga JSON-matriser som stöds av Recommendations:
["AB","BC"]
alla värden är strängar[1,2]
alla värden är numeriska
["AB",1,true, [1,2,3]]
är en giltig JSON-matris, men stöds inte i Recommendations eftersom det innehåller blandade värdetyper (sträng, numeriskt, booleskt, objekt).När ett anpassat attribut har skickats som en giltig JSON-array behandlas attributet som ett flervärdesattribut för alla produkter i katalogen.
Begränsningar:
- Du kan inte använda fördefinierade entitetsattributnamn för anpassade entitetsattribut. (Se Entitetsattribut.)
- Attributet
entity.environment
är reserverad av systemet och kan inte användas för anpassade entitetsattribut. Försök att skickaentity.environment
användatargetPageParams
, feeds och API:er ignoreras. - Matriser måste innehålla en värdetyp. Arrayer med blandade värden (
["AB",1,true]
) stöds inte. - Ett flervärdesattribut som innehåller en kapslad JSON-array (
[10,12,[1,2,3]]
) behandlas som ett attribut med ett värde.
Implementera attribut med flera värden section_80FEFE49E8AF415D99B739AA3CBA2A14
Anpassade entitetsattribut med flera värden stöds vid användning av feeds (CSV). targetPageParams
och leverans-API för att överföra produkter. Nya värden ersätter aktuella värden. De läggs inte till. Tomma arrayer ( [] ) behandlas som om de inte har några värden.
Dubbla citattecken måste undantas. Till exempel: "[""test"", ""value""]"
är en giltig JSON-array som kan användas i CSV.
Du kan ta med upp till 500 värden i ett flervärdesattribut.
Använda targetPageParams
I följande exempel visas hur du använder targetPageParams
function targetPageParams() {
return {
'entity.id': '123',
'entity.categoryId': '["A", "A:B", "A:B:C", "A:B:C:D"]',
'entity.MultiValueAttribute': '["X", "Y", "Z"]',
'entity.event.detailsOnly': 'true',
'excludedIds": '[123, 3232, 2323, 4344]',
'orderId": '123456',
'orderTotal": '195.32',
'productPurchaseId": '[001,002,003]'
};
}
Använda CSV
Du kan hantera dina CSV-filer i Raw-format med en textredigerare eller använda kalkylbladsprogram.
CSV-filen med Raw-format ser ut så här:
Samma katalog kommer att se ut så här i ett kalkylblad:
När du konverterar till CSV-format lägger kalkylbladsprogrammet till citattecken runt cellinnehållet för att förhindra att kommatecken i cellen fungerar som kolumnavgränsare. Det lägger också till citattecken runt JSON-strängvärden som du inkluderar i anpassade attribut med flera värden. Det kan göra det okomplicerat att arbeta direkt med råfilen. Exempel:
- Kalkylblad:
["1","2","3"]
- Råformat:
"[""1"",""2"",""3""]"
Var försiktig när du redigerar en CSV-fil med Raw-katalog direkt.
Använda API:er
Du kan skicka flervärdesattribut med leverans-API:t i en mbox-parameter som ett strängvärde som innehåller en escape-matris.
"execute": {
"mboxes": [
{
"index": 0,
"name": "first-mbox",
"parameters": {
"entity.id": "32323",
"entity.categoryId": "My Category",
"entity.MultiValueAttribute": "[\"X\", \"Y\", \"Z\"]"
}
}
]
}
Se Adobe Recommendations API-dokumentation om du vill ha information om hur du använder enhets-API:erna Delivery och Save.
Använda operatorer med attribut för flera värden section_83C2288A805242D9A02EBC4F07DEE945
När du tillämpar operatorer på anpassade attribut med flera värden i inkluderingsregler för algoritmer, katalogregler och exkluderingsregler, blir resultatet true om minst ett värde i listan klarar åtgärden (booleskt) eller).
I följande exempel är regeln message contains abc
.
- Fall 1:
entity.genre = ["ab", "bc", "de"]
. Resultatet är false eftersom inget värde innehållerabc
. - Fall 2:
entity.genre = ["abcde","de","ef"]
. Resultatet är sant eftersom ett värde innehållerabc
.
För negativa operatorer måste alla attributvärden skickas (booleskt) och). Om operatorn till exempel är notEquals
blir resultatet false om något värde matchar.
I följande avsnitt finns information om operatorbeteende i algoritminkluderingsregler, katalogregler och exkluderingsregler.
Lika med
Om något attributvärde är lika med indatavärdet, blir resultatet true.
Exempel: genre equals abc
- Fall 1:
entity.genre = ["ab", "bc", "de"]
. Resultatet är false eftersom inget värde är lika medabc
. - Fall 2:
entity.genre = ["abc", "de", "ef"]
. Resultatet är sant eftersom ett värde är lika medabc
. - Fall 3:
entity.genre = ["abcde", "de", "ef"]
. Resultatet är falskt eftersomabc
är inte lika med något element i listan.
Är inte lika med
Om inget attributvärde är lika med indatavärdet blir resultatet true.
Exempel: genre not equals abc
- Fall 1:
entity.genre = ["ab", "bc", "de"]
. Resultatet är sant eftersom inget värde är lika medabc
. - Fall 2:
entity.genre = ["abc", "de", "ef"]
. Resultatet är false eftersom ett värde är lika medabc
. - Fall 3:
entity.genre = ["abcde", "de", "ef"]
. Resultatet är sant eftersomabc
är inte lika med något element i listan.
Innehåller
Om något värde för attributet innehåller indatavärdet, blir resultatet true.
Exempel: genre contains abc
- Fall 1:
entity.genre = ["ab", "bc", "de"]
. Resultatet är false eftersom inget värde innehållerabc
. - Fall 2:
entity.genre = ["abcde", "de", "ef"]
. Resultatet är sant eftersom ett värde innehållerabc
.
Innehåller inte
Om inget värde för attributet innehåller indatavärdet blir true.
Exempel: genre does not contain abc
- Fall 1:
entity.genre = ["ab", "bc", "de"]
. Resultatet är sant eftersom inget värde innehållerabc
. - Fall 2:
entity.genre = ["abcde", "de", "ef"]
. Regeln resulterar i false eftersom ett värde innehållerabc
.
Börjar med
Om ett värde för ett attribut börjar med indatavärdet blir true.
Exempel: genre starts with abc
- Fall 1:
entity.genre = ["ab", "bc", "de"]
. Resultatet är false eftersom inget värde börjar medabc
. - Fall 2:
entity.genre = ["abcde", "de", "ef"]
. Resultatet är sant eftersom ett värde börjar medabc
. - Fall 3:
entity.genre = ["ab", "de", "abc"]
. Resultatet är sant eftersom ett värde börjar medabc
(inte nödvändigtvis det första elementet i listan).
Slutar med
Om ett värde för ett attribut slutar med indatavärdet blir true.
Exempel: genre ends with abc
- Fall 1:
entity.genre = ["ab", "bc", "de"]
. Resultatet är false eftersom inget värde slutar medabc
. - Fall 2:
entity.genre = ["deabc", "de", "ef"]
. Resultatet är sant eftersom ett värde slutar medabc
.
Större än eller lika med (endast numeriska värden)
Attributvärdet konverteras till det dubbla. Attribut som inte kan konverteras hoppas över när regeln körs.
Efter bearbetning blir alla attributvärden som är större än eller lika med indatavärdet true.
Exempel: price greater than or equal to 100
- Fall 1:
entity.price = ["10", "20", "45"]
. Resultatet är false eftersom inget värde är större än eller lika med 100. Värdetde
hoppas över eftersom det inte går att konvertera till dubbel. - Fall 2:
entity.price = ["100", "101", "90", "80"]
. Resultatet är sant eftersom två värden är större än eller lika med 100.
Mindre än eller lika med (endast numeriska värden)
Attributvärdet konverteras till det dubbla. Attribut som inte kan konverteras hoppas över när regeln körs.
Efter bearbetning blir alla attributvärden som är mindre än eller lika med indatavärdet true.
Exempel: price less than or equal to 100
- Fall 1:
entity.price = ["101", "200", "141"]
. Resultatet är false eftersom inget värde är mindre än eller lika med 100. Värdetde
hoppas över eftersom det inte går att konvertera till dubbel. - Fall 2:
entity.price = ["100", "101", "90", "80"]
. Resultatet är sant eftersom två värden är mindre än eller lika med 100.
Matchar dynamiskt (endast tillgängligt i objektbaserade algoritmer)
Om något attributvärde matchar indatavärdet blir true.
Exempel: genre matches abc
- Fall 1:
entity.genre = ["ab", "bc", "de"]
. Resultatet är false eftersom inget värde matcharabc
. - Fall 2:
entity.genre = ["abc", "de", "ef"]
. Resultatet är sant eftersom ett värde matcharabc
.
Matchar inte dynamiskt (endast tillgängligt i objektbaserade algoritmer)
Om något attributvärde matchar indatavärdet blir resultatet false.
Exempel: genre does not match abc
- Fall 1:
entity.genre = ["ab", "bc", "de"]
. Resultatet är sant eftersom inget värde matcharabc
. - Fall 2:
entity.genre = ["abc", "de", "ef"]
. Regeln resulterar i false eftersom ett värde matcharabc
.
Dynamiska intervall (endast tillgängligt i objektbaserade algoritmer, endast numeriska värden)
Om ett numeriskt attributvärde ligger inom det angivna intervallet blir resultatet sant.
Exempel: price dynamically ranges in 80% to 120% of 100
- Fall 1:
entity.price = ["101", "200", "125"]
. Resultatet är sant eftersom101
ligger mellan 80 % och 120 % av 100. Värdetde
hoppas över eftersom det inte går att konvertera till dubbel. - Fall 2:
entity.price = ["130", "191", "60", "75"]
. Resultatet är false eftersom inget värde ligger i intervallet 80 % till 120 % av 100.
Attribut med flera värden i design section_F672E4F6E1D44B3196B7ADE89334ED4A
Flervärdesattribut visas som kommaavgränsade listor när de refereras i en design.
Exempel:
När entity.genre=["genre1","genre2"]
refereras i en design som $entity<N>.genre
, resultatet blir genre1, genre2
.