Utnyttja fragment i beslutspolicyer fragments

Om din beslutspolicy innehåller beslutsposter, inklusive fragment, kan du utnyttja dessa fragment i beslutspolicykoden. Läs mer om fragment

AVAILABILITY
Den här funktionen är för närvarande bara tillgänglig för kodbaserad upplevelse -kanalen.

Anta till exempel att du vill visa olika innehåll för flera mobila enhetsmodeller. Se till att du har lagt till fragment som motsvarar de enheterna i beslutsposten som du använder i beslutspolicyn. Lär dig hur.

{width="70%"}

När du är klar kan du använda någon av följande metoder:

Infoga koden direkt

Kopiera och klistra in kodblocket nedan i beslutspolicykoden. Ersätt variable med fragment-ID och placement med fragmentreferensnyckeln:

code language-none
{% let variable =  get(item._experience.decisioning.offeritem.contentReferencesMap, "placement").id %}
{{fragment id = variable}}
Följ de detaljerade stegen
  1. Navigera till Helper functions och lägg till funktionen {% let variable = expression %} {{variable}} i kodfönstret, där du kan deklarera variabeln för fragmentet.

  2. Använd funktionen Karta > Hämta {%= get(map, string) %} för att skapa ditt uttryck. Kartan är det fragment som beslutsobjektet refererar till och strängen kan vara den enhetsmodell som du angav i beslutsobjektet som Fragment reference key.

  3. Du kan också använda ett kontextuellt attribut som skulle innehålla detta enhetsmodell-ID.

  4. Lägg till variabeln som du valde för fragmentet som fragment-ID.

Fragment-ID och referensnyckel väljs från beslutsobjektets Fragments-avsnitt.

WARNING
Om fragmentnyckeln är felaktig eller om fragmentinnehållet inte är giltigt, kommer återgivningen att misslyckas och orsaka fel i Edge-anropet.

Stödlinjer när fragment används fragments-guardrails

Beslutsobjekt och kontextattribut

Attribut för beslutsobjekt och kontextalattribut stöds inte som standard i Journey Optimizer-fragment. Du kan emellertid använda globala variabler i stället, som beskrivs nedan.

Säg att du vill använda variabeln sport i ditt fragment.

  1. Referera den här variabeln i fragmentet, till exempel:

    code language-none
    Elevate your practice with new {{sport}} gear!
    
  2. Definiera variabeln med funktionen Let i beslutsprincipblocket. I exemplet nedan definieras sport med attributet för beslutsobjekt:

    code language-none
    {#each decisionPolicy.13e1d23d-b8a7-4f71-a32e-d833c51361e0.items as |item|}}
    {% let sport = item._cjmstage.value %}
    {{fragment id = get(item._experience.decisioning.offeritem.contentReferencesMap, "placement1").id }}
    {{/each}}
    

Innehållsvalidering av beslutsfragment

  • På grund av dessa fragment, när de används i en kampanj, hoppas meddelandevalideringen under skapandet av kampanjinnehåll över för fragment som refereras i beslutsobjekt.

  • Valideringen av fragmentinnehållet sker bara när fragmenten skapas och publiceras.

  • För uttrycksfragment av JSON-typ valideras innehållet syntaktiskt när fragmentet sparas. Valideringsfel visas som varningar.

Vid körning valideras kampanjinnehållet (inklusive fragmentinnehåll från beslutsobjekt). Om valideringen misslyckas återges inte kampanjen.

recommendation-more-help
b22c9c5d-9208-48f4-b874-1cefb8df4d76