Definiera modeller för innehållsfragment defining-content-fragment-models

Content Fragment Models i Adobe Experience Manager (AEM) as a Cloud Service definierar strukturen för innehållet i dina Content Fragments. Dessa fragment kan sedan användas för att skapa sidor eller som grund för ditt headless-innehåll.

På den här sidan beskrivs hur du definierar innehållsfragmentmodellen med den dedikerade redigeraren. Se Hantera dina modeller för innehållsfragment för ytterligare uppgifter och alternativ som är tillgängliga när fragmenten har skapats, inklusive åtgärder som är tillgängliga från konsolen för innehållsfragment, som tillåter modellen i din mapp och publicera modellen.

CAUTION
Om du ska fråga mot flera refererade fragment rekommenderar vi inte att de olika fragmentmodellerna har fältnamn med samma namn, utan olika typer.
Mer information finns i AEM GraphQL API för användning med innehållsfragment - begränsningar

Definiera innehållsfragmentmodellen defining-your-content-fragment-model

Content Fragment Model definierar effektivt strukturen för de resulterande innehållsfragmenten med hjälp av ett urval av datatyper. Med modellredigeraren kan du lägga till instanser av datatyperna och sedan konfigurera dem för att skapa de obligatoriska fälten:

CAUTION
Om du redigerar en modell som redan används av befintliga innehållsfragment kan det påverka de beroende fragmenten.
  1. Markera panelen för modeller för innehållsfragment i konsolen för innehållsfragment och navigera till mappen där modellen för innehållsfragment finns.

    note note
    NOTE
    Du kan också öppna en modell direkt efter att du har skapat den.
  2. Öppna den modell som krävs för Redigera. Använd snabbåtgärden eller markera modellen och sedan åtgärden från verktygsfältet.

    När du har öppnat modellredigeraren visas följande:

    • vänster: fält har redan definierats
    • höger: Datatyper som är tillgängliga för att skapa fält (och egenskaper som kan användas när fälten har skapats)
    note note
    NOTE
    När ett fält definieras som Obligatoriskt markeras Label som anges i den vänstra rutan med ett asterix (*).

    Egenskaper

  3. Lägga till ett fält

    • Dra en obligatorisk datatyp till önskad plats för ett fält:

      Dra datatypen för att skapa fältet

    • När ett fält har lagts till i modellen visar den högra panelen de egenskaper som kan definieras för den aktuella datatypen. Här definierar du vad som krävs för fältet.

      • Många egenskaper är självförklarande. Mer information finns i Egenskaper (datatyper).

      • Om du skriver en fältetikett slutförs egenskapsnamnet automatiskt, om det är tomt, och kan uppdateras manuellt efteråt.

        note caution
        CAUTION
        När egenskapen Egenskapsnamn uppdateras manuellt för en datatyp, får namn bara innehålla ** A-Z, a-z, 0-9 och understreck"_" som specialtecken.
        Om modeller som skapats i tidigare versioner av AEM innehåller ogiltiga tecken tar du bort eller uppdaterar dessa tecken.

      Till exempel:

      Fältegenskaper

  4. Ta bort ett fält

    Markera det obligatoriska fältet och välj sedan papperskorgsikonen. Du ombeds bekräfta åtgärden.

    Ta bort

  5. Lägg till alla obligatoriska fält och definiera de relaterade egenskaperna efter behov. Till exempel:

    Spara

  6. Välj Spara om du vill behålla definitionen.

Datatyper data-types

Det finns ett urval datatyper som du kan använda för att definiera din modell:

  • Enkelradig text

    • Lägg till ett fält för en enda textrad. Den maximala längden kan definieras
    • Fältet kan konfigureras så att fragmentförfattare kan skapa nya instanser av fältet
  • Flerradstext

    • Ett textområde som kan vara RTF, Oformaterad text eller Markering
    • Fältet kan konfigureras så att fragmentförfattare kan skapa nya instanser av fältet
    note note
    NOTE
    Oavsett om textområdet är RTF, Oformaterad text eller Markering definieras i modellen av egenskapen Standardtyp.
    Det här formatet kan inte ändras från redigeraren för innehållsfragment, utan bara från modellen.
  • Number

    • Lägga till ett numeriskt fält
    • Fältet kan konfigureras så att fragmentförfattare kan skapa nya instanser av fältet
  • Boolean

    • Lägg till en boolesk kryssruta
  • Datum och tid

    • Lägg till ett datum- och/eller tidsfält
  • Uppräkning

    • Lägga till en uppsättning kryssrutefält, alternativknappar eller listrutor
      • Du kan ange vilka alternativ som är tillgängliga för fragmentförfattaren
  • Taggar

    • Tillåter fragmentförfattare att komma åt och markera taggområden
  • Fragmentreferens

    • Refererar till andra innehållsfragment; kan användas för att skapa kapslat innehåll

    • Datatypen kan konfigureras så att fragmentförfattare kan:

      • Redigera det refererade fragmentet direkt.
      • Skapa ett nytt innehållsfragment baserat på lämplig modell
      • Skapa nya instanser av fältet
    • Referensen anger sökvägen till den refererade resursen, till exempel /content/dam/path/to/resource

  • Fragmentreferens (UUID)

    • Refererar till andra innehållsfragment; kan användas för att skapa kapslat innehåll

    • Datatypen kan konfigureras så att fragmentförfattare kan:

      • Redigera det refererade fragmentet direkt.
      • Skapa ett nytt innehållsfragment baserat på lämplig modell
      • Skapa nya instanser av fältet
    • I redigeraren anger referensen sökvägen till den refererade resursen. Referensen behålls internt som ett UUID (Universal Unique ID) som refererar till resursen

      • Du behöver inte känna till UUID. I fragmentredigeraren kan du bläddra till det nödvändiga fragmentet
  • Innehållsreferens

    • Refererar till annat innehåll, oavsett typ; kan användas för att skapa kapslat innehåll
    • Om en bild refereras kan du välja att visa en miniatyrbild
    • Fältet kan konfigureras så att fragmentförfattare kan skapa nya instanser av fältet
    • Referensen anger sökvägen till den refererade resursen, till exempel /content/dam/path/to/resource
  • Innehållsreferens (UUID)

    • Refererar till annat innehåll, oavsett typ; kan användas för att skapa kapslat innehåll
    • Om en bild refereras kan du välja att visa en miniatyrbild
    • Fältet kan konfigureras så att fragmentförfattare kan skapa nya instanser av fältet
    • I redigeraren anger referensen sökvägen till den refererade resursen. Referensen behålls internt som ett UUID (Universal Unique ID) som refererar till resursen
      • Du behöver inte känna till UUID. I fragmentredigeraren kan du bläddra till den resurs som krävs
  • JSON-objekt

    • Gör att innehållsfragmentets författare kan ange JSON-syntax i motsvarande element i ett fragment.

      • Om du vill att AEM ska kunna lagra direkt JSON som du har kopierat/klistrat in från en annan tjänst.
      • JSON skickas och skrivs ut som JSON i GraphQL.
      • Innehåller JSON-syntaxmarkering, automatisk komplettering och felmarkering i Content Fragment Editor.
  • Platshållare för flik

    • Tillåter att flikar kan användas när innehållet i innehållsfragmentet redigeras.

      • Dessa visas som avgränsare i modellredigeraren, och delar upp avsnitt i listan med innehållsdatatyper. Varje instans representerar början på en ny flik.
      • I fragmentredigeraren visas varje instans som en flik.
      note note
      NOTE
      Den här datatypen används endast för formatering, den ignoreras av AEM GraphQL-schemat.

Egenskaper (datatyper) properties

Många egenskaper är självförklarande, för vissa egenskaper finns ytterligare information nedan:

  • Egenskapsnamn

    När den här egenskapen uppdateras manuellt för en datatyp, måste innehålla endast A-Z, a-z, 0-9 och understreck"_" som specialtecken.

    note caution
    CAUTION
    Om modeller som skapats i tidigare versioner av AEM innehåller ogiltiga tecken tar du bort eller uppdaterar dessa tecken.
  • Återge som

    De olika alternativen för att realisera/återge fältet i ett fragment. Detta gör ofta att du kan ange om författaren ska se en enda instans av fältet eller om den ska kunna skapa flera instanser. När Flera fält används kan du definiera minsta och högsta antal objekt - se Validering för mer information.

  • Fältetikett
    Om du anger en fältetikett genereras ett egenskapsnamn automatiskt, som sedan kan uppdateras manuellt om det behövs.

  • Validering
    Grundläggande validering är tillgängligt av mekanismer som egenskapen Required . Vissa datatyper har ytterligare valideringsfält. Mer information finns i Validering.

  • För datatypen Flerradig text går det att definiera standardtypen som endera:

    • RTF
    • Markdown
    • Oformaterad text

    Om inget anges används standardvärdet RTF för det här fältet.

    Om du ändrar standardtypen i en modell för innehållsfragment börjar det bara gälla för ett befintligt, relaterat innehållsfragment efter att fragmentet har öppnats i redigeraren och sparats.

  • Unik
    Innehållet (för det specifika fältet) måste vara unikt för alla innehållsfragment som skapas från den aktuella modellen.

    Detta används för att säkerställa att innehållsförfattare inte kan upprepa innehåll som redan har lagts till i ett annat fragment av samma modell.

    Ett enkelradigt textfält med namnet Country i innehållsfragmentmodellen kan till exempel inte ha värdet Japan i två beroende innehållsfragment. En varning skickas när ett försök görs att utföra den andra instansen.

    note note
    NOTE
    Unikitet säkerställs per språkrot.
    note note
    NOTE
    Variationer kan ha samma unika-värde som varianter av samma fragment, men inte samma värde som används i andra variationer av fragment.
  • Mer information om den specifika datatypen och dess egenskaper finns i Innehållsreferens.

  • Mer information om den specifika datatypen och dess egenskaper finns i Fragmentreferens (kapslade fragment).

  • Översättningsbar

    Om du markerar kryssrutan Översättningsbar för ett fält i redigeraren för innehållsfragmentmodellen kommer följande att göras:

    • Kontrollera att fältets egenskapsnamn har lagts till i översättningskonfigurationen, kontext /content/dam/<sites-configuration>, om det inte redan finns.
    • För GraphQL: ställ in egenskapen <translatable> i fältet Innehållsfragment på yes för att tillåta GraphQL-frågefilter för JSON-utdata med endast översättningsbart innehåll.

Validering validation

Olika datatyper kan nu definiera valideringskrav för när innehåll anges i det resulterande fragmentet:

  • Enkelradig text

    • Jämför med ett fördefinierat regex.
  • Number

    • Sök efter specifika värden.
  • Innehållsreferens

    • Testa om det finns specifika typer av innehåll.
    • Det går endast att referera till resurser med en angiven filstorlek eller mindre.
    • Det går endast att referera till bilder inom ett fördefinierat intervall med bredd och/eller höjd (i pixlar).
  • Fragmentreferens

    • Testa om det finns en viss modell för innehållsfragment.
  • Minsta antal objekt / Max antal objekt

    Fält som har definierats som ett flera fält (anges med Återge som) har följande alternativ:

    • Minsta antal objekt
    • Maximalt antal objekt

    Dessa valideras i redigeraren för innehållsfragment.

Använda referenser till kapslat innehåll using-references-to-form-nested-content

Innehållsfragment kan skapa kapslat innehåll med någon av följande datatyper:

  • Innehållsreferens

    • Ger en enkel referens till annat innehåll, av alla typer.

    • Tillhandahålls av datatyperna:

      • Innehållsreferens - sökvägsbaserad
      • Innehållsreferens (UUID) - UUID-baserad
    • Kan konfigureras för en eller flera referenser (i det resulterande fragmentet).

  • Fragmentreferens (kapslade fragment)

    • Refererar till andra fragment, beroende på vilka specifika modeller som anges.

    • Tillhandahålls av datatyperna:

      • Fragmentreferens - sökvägsbaserad
      • Fragmentreferens (UUID) - UUID-baserad
    • Gör att du kan ta med/hämta strukturerade data.

      note note
      NOTE
      Den här metoden är särskilt intressant när du använder Headless Content Delivery med hjälp av Content Fragments med GraphQL.

      * Kan konfigureras för en eller flera referenser (i det resulterande fragmentet).

NOTE
Se Uppgradera dina innehållsfragment för UUID-referenser för mer information om Content/Fragment Reference och Content/Fragment Reference (UUID) och uppgradera till UUID-baserade datatyper.
NOTE
AEM har upprepningsskydd för:
  • Innehållsreferenser
    Detta förhindrar att användaren lägger till en referens till det aktuella fragmentet och kan leda till en tom dialogruta för fragmentreferensväljaren.

  • Fragmentreferenser i GraphQL
    Om du skapar en djup fråga som returnerar flera innehållsfragment som refereras av varandra, returneras null vid den första förekomsten.

CAUTION
Om du ska fråga mot flera refererade fragment rekommenderar vi inte att de olika fragmentmodellerna har fältnamn med samma namn, utan olika typer.
Mer information finns i AEM GraphQL API för användning med innehållsfragment - begränsningar

Innehållsreferens content-reference

Med datatyperna Innehållsreferens och Innehållsreferens (UUID) kan du återge innehåll från en annan källa, till exempel bild, sida eller Experience Fragment.

Förutom standardegenskaper kan du ange:

  • Rotsökvägen som anger, eller representerar, var det refererade innehållet ska lagras

    note note
    NOTE
    Detta är obligatoriskt om du vill överföra och referera till bilder direkt i det här fältet när du använder redigeraren för innehållsfragment.
    Mer information finns i Referensbilder.
  • De innehållstyper som kan refereras

    note note
    NOTE
    Dessa måste innehålla Bild om du vill överföra och referera till bilder direkt i det här fältet när du använder redigeraren för innehållsfragment.
    Mer information finns i Referensbilder.
  • Begränsningar för filstorlekar

  • Om en bild refereras:

    • Visa miniatyrbild
    • Bildbegränsningar för höjd och bredd

Innehållsreferens

Fragmentreferens (kapslade fragment) fragment-reference-nested-fragments

Datatyperna Fragmentreferens och Fragmentreferens (UUID) kan referera till ett eller flera innehållsfragment. Den här funktionen är av särskilt intresse när du hämtar innehåll som ska användas i din app, eftersom du kan hämta strukturerade data med flera lager.

Till exempel:

  • En modell som definierar detaljer för en anställd, inklusive:
    • En referens till modellen som definierar arbetsgivaren (företaget)
type EmployeeModel {
    name: String
    firstName: String
    company: CompanyModel
}

type CompanyModel {
    name: String
    street: String
    city: String
}
NOTE
Fragmentreferenser är av särskilt intresse för Headless Content Delivery med hjälp av Content Fragments med GraphQL.

Förutom standardegenskaper kan du definiera:

  • Återge som:

    • multifield - fragmentförfattaren kan skapa flera, enskilda referenser

    • fragmentreferens - tillåter fragmentförfattaren att välja en enskild referens till ett fragment

  • Modelltyp
    Du kan välja flera modeller. När du lägger till referenser till ett innehållsfragment måste alla refererade fragment ha skapats med dessa modeller.

  • Rotsökväg
    Detta anger, eller representerar, en rotsökväg för alla fragment som refereras.

  • Tillåt att fragment skapas

    Detta gör att fragmentförfattaren kan skapa ett fragment baserat på lämplig modell.

    • fragmentreferenssammansatt - tillåter fragmentförfattaren att skapa en sammansatt bild genom att markera flera fragment

    Fragmentreferens

NOTE
Det finns en mekanism för upprepningsskydd. Det förhindrar användaren från att markera det aktuella innehållsfragmentet i fragmentreferensen och kan leda till en tom dialogruta för fragmentreferensväljaren.
Det finns också upprepningsskydd för fragmentreferenser i GraphQL. Om du skapar en djup fråga i två innehållsfragment som refererar till varandra returneras null.
recommendation-more-help
fbcff2a9-b6fe-4574-b04a-21e75df764ab