Modeller för innehållsfragment content-fragment-models

Content Fragment Models i AEM definierar innehållsstrukturen för dina innehållsfragment,som en grund för ditt headless-innehåll.

Så här använder du modeller för innehållsfragment:

  1. Aktivera funktionen Content Fragment Model för instansen
  2. Skapa och konfigurera, dina modeller för innehållsfragment
  3. Aktivera dina modeller för innehållsfragment för användning när du skapar innehållsfragment
  4. Tillåt dina modeller för innehållsfragment i de nödvändiga Assets-mapparna genom att konfigurera Profiler.

Skapa en innehållsfragmentmodell creating-a-content-fragment-model

  1. Navigera till Verktyg, Allmänt och öppna sedan Modeller för innehållsfragment.

  2. Navigera till den mapp som passar din konfiguration eller underkonfiguration.

  3. Använd Skapa för att öppna guiden.

    note caution
    CAUTION
    Om användningen av innehållsfragmentmodeller inte har aktiverats är alternativet Skapa inte tillgängligt.
  4. Ange modelltitel.
    Du kan också definiera olika egenskaper. Du kan till exempel lägga till taggar, en beskrivning och välja Aktivera modell för att aktivera modellen om det behövs.

    note note
    NOTE
    Mer information om URL-mönstret för standardförhandsgranskning finns i Modell för innehållsfragment - egenskaper.

    titel och beskrivning

  5. Använd Skapa för att spara den tomma modellen. Ett meddelande visar att åtgärden lyckades. Du kan välja Öppna om du vill redigera modellen omedelbart eller Klar om du vill återgå till konsolen.

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

Modellen för innehållsfragment definierar effektivt strukturen för de resulterande innehållsfragmenten med en markering 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 befintlig innehållsfragmentmodell kan det påverka beroende fragment.
  1. Navigera till Verktyg, Allmänt och öppna sedan Modeller för innehållsfragment.

  2. Navigera till mappen som innehåller innehållsfragmentmodellen.

  3. Ö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 är Obligatoriskt markeras Label som anges i den vänstra rutan med ett asterix (*).

egenskaper

  1. Lägga till ett fält

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

      datatyp till fält

    • När ett fält har lagts till i modellen visar den högra panelen 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.

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

        note caution
        CAUTION
        När du uppdaterar egenskapen Egenskapsnamn manuellt för en datatyp måste du tänka på att namn bara får 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

  2. Ta bort ett fält

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

    ta bort

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

    spara

  4. 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
  • 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
  • Fragmentreferens

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

    • Fältet 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
  • JSON-objekt

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

      • För 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-schema.

Egenskaper properties

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

  • Egenskapsnamn

    När du uppdaterar den här egenskapen manuellt för en datatyp bör du tänka på att namn 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. Med den här egenskapen kan du ofta definiera om författaren ska se en enda instans av fältet eller om han eller hon 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 innehållsfragmentmodell börjar detta 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.
    note caution
    CAUTION
    Om du vill använda MSM (som skapar kopior av innehållsfragment) ska eventuella unika-begränsningar tas bort från alla datatyper som används i respektive modell för innehållsfragment.
  • 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 specifik innehållsfragmentmodell.
  • 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:

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.
    • Kan konfigureras för en eller flera referenser (i det resulterande fragmentet).
  • Fragmentreferens (kapslade fragment)

NOTE
AEM har ett upprepningsskydd för:
  • Innehållsreferenser
    Detta förhindrar att användaren lägger till en referens till det aktuella fragmentet. Detta 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.

Innehållsreferens content-reference

Med Innehållsreferens kan du återge innehåll från en annan källa, till exempel bild- eller innehållsfragment.

Förutom standardegenskaper kan du ange:

  • Rotsökvägen för refererat innehåll

  • De innehållstyper som kan refereras

  • 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

Fragmentreferensen refererar till ett eller flera innehållsfragment. Den här funktionen är särskilt intressant när du hämtar innehåll som ska användas i programmet, eftersom du kan hämta strukturerade data med flera lager.

Till exempel:

  • En modell som definierar detaljer för en medarbetare. Dessa omfattar:
    • 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
Detta är av särskilt intresse i samband med leverans av 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 redigerar innehållsfragmentet måste alla refererade fragment ha skapats med dessa modeller.

  • Rotsökväg
    Detta anger 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. Användaren kan inte välja det aktuella innehållsfragmentet i fragmentreferensen. Detta kan leda till en tom dialogruta för fragmentreferensväljaren.
Det finns också ett upprepningsskydd för fragmentreferenser i GraphQL. Om du skapar en djup fråga i två innehållsfragment som refererar till varandra returneras null.

Content Fragment Model - egenskaper content-fragment-model-properties

Du kan redigera egenskaperna för en innehållsfragmentmodell:

  • Grundläggande

    • Modelltitel

    • Taggar

    • Beskrivning

    • Överför bild

    • URL-mönster för standardförhandsvisning

      note note
      NOTE
      Detta används bara av den nya innehållsfragmentsredigeraren. Mer information finns i Modeller för innehållsfragment.

Aktivera eller inaktivera en innehållsfragmentmodell enabling-disabling-a-content-fragment-model

För fullständig kontroll över användningen av dina modeller för innehållsfragment har de en status som du kan ange.

Aktivera en innehållsfragmentmodell enabling-a-content-fragment-model

När en modell skapas måste den aktiveras så att den:

  • Kan markeras när du skapar ett innehållsfragment.
  • Kan refereras inifrån en innehållsfragmentmodell.
  • Är tillgängligt för GraphQL, så schemat genereras.

Så här aktiverar du en modell som har flaggats som antingen:

  • Utkast : mew (aldrig aktiverat).
  • Inaktiverad : har inaktiverats specifikt.

Du använder alternativet Aktivera från antingen:

  • Det övre verktygsfältet när den obligatoriska modellen är markerad.
  • Motsvarande snabbåtgärd (mouse-over the required Model).

Aktivera ett utkast eller en inaktiverad modell

Inaktivera en innehållsfragmentmodell disabling-a-content-fragment-model

En modell kan också inaktiveras så att:

  • Modellen är inte längre tillgänglig som grund för att skapa nya innehållsfragment.

  • Men:

    • GraphQL-schemat fortsätter att genereras och är fortfarande frågningsbart (för att inte påverka JSON-API:t).
    • Alla innehållsfragment som är baserade på modellen kan fortfarande efterfrågas och returneras från GraphQL slutpunkt.
  • Det går inte att referera till modellen längre, men befintliga referenser behålls orörda och kan fortfarande läsas och returneras från GraphQL-slutpunkten.

Om du vill inaktivera en modell som är flaggad som Aktiverad använder du alternativet Inaktivera från antingen:

  • Det övre verktygsfältet när den obligatoriska modellen är markerad.
  • Motsvarande snabbåtgärd (mouse-over the required Model).

Inaktivera en aktiverad modell

Tillåt modeller för innehållsfragment i din Assets-mapp allowing-content-fragment-models-assets-folder

Om du vill implementera innehållsstyrning kan du konfigurera profiler i Assets-mappen för att styra vilka innehållsfragmentmodeller som tillåts för att skapa fragment i den mappen.

NOTE
Mekanismen liknar tillåter sidmallar för en sida och dess underordnade sidor i avancerade egenskaper för en sida.

Så här konfigurerar du principer för Tillåtna modeller för innehållsfragment:

  1. Navigera och öppna Egenskaper för den Assets-mapp som krävs.

  2. Öppna fliken Profiler där du kan konfigurera:

    • Ärvd från<folder>

      Profiler ärvs automatiskt när nya underordnade mappar skapas. Profilen kan konfigureras om (och arvet brytas) om undermappar måste tillåta modeller som skiljer sig från den överordnade mappen.

    • Tillåtna modeller för innehållsfragment via sökväg

      Flera modeller kan tillåtas.

    • Tillåtna modeller för innehållsfragment efter tagg

      Flera modeller kan tillåtas.

    Modellprincip för innehållsfragment

  3. Spara eventuella ändringar.

De Content Fragment-modeller som tillåts för en mapp löses enligt följande:

  • Profiler för Tillåtna modeller för innehållsfragment.
  • Om den är tom kan du försöka identifiera principen med arvsreglerna.
  • Om arvskedjan inte ger något resultat ska du titta på konfigurationen Cloud Services för den mappen (också först direkt och sedan via arv).
  • Om inget av ovanstående ger några resultat finns det inga tillåtna modeller för den mappen.

Ta bort en innehållsfragmentmodell deleting-a-content-fragment-model

CAUTION
Om du tar bort en innehållsfragmentmodell kan det påverka beroende fragment.

Så här tar du bort en innehållsfragmentmodell:

  1. Navigera till Verktyg, Allmänt och öppna sedan Modeller för innehållsfragment.

  2. Navigera till mappen som innehåller innehållsfragmentmodellen.

  3. Markera din modell, följt av Ta bort från verktygsfältet.

    note note
    NOTE
    Om modellen refereras visas en varning. Vidta åtgärder på lämpligt sätt.

Publicera en innehållsfragmentmodell publishing-a-content-fragment-model

Modeller för innehållsfragment måste publiceras när/innan beroende innehållsfragment publiceras.

Så här publicerar du en innehållsfragmentmodell:

  1. Navigera till Verktyg, Allmänt och öppna sedan Modeller för innehållsfragment.

  2. Navigera till mappen som innehåller innehållsfragmentmodellen.

  3. Välj en modell, följt av Publish i verktygsfältet.
    Publiceringsstatusen anges i konsolen.

    note note
    NOTE
    Om du publicerar ett innehållsfragment för vilket modellen ännu inte har publicerats, visas detta i en urvalslista och modellen publiceras med fragmentet.

Avpublicera en innehållsfragmentmodell unpublishing-a-content-fragment-model

Modeller för innehållsfragment kan avpubliceras om de inte refereras av några fragment.

Så här avpublicerar du en innehållsfragmentmodell:

  1. Navigera till Verktyg, Allmänt och öppna sedan Modeller för innehållsfragment.

  2. Navigera till mappen som innehåller innehållsfragmentmodellen.

  3. Välj en modell, följt av Avpublicera i verktygsfältet.
    Publiceringsstatusen anges i konsolen.

Om du försöker avpublicera en modell som för närvarande används av ett eller flera fragment visas en felvarning om detta:

Felmeddelande för innehållsfragmentmodell när en modell som används avpubliceras

Meddelandet föreslår att du kontrollerar panelen Referenser för att undersöka mer:

Modell för innehållsfragment i referenser

Låsta (publicerade) modeller för innehållsfragment locked-published-content-fragment-models

Den här funktionen tillhandahåller styrning för publicerade modeller för innehållsfragment.

Utmaningen the-challenge

  • Content Fragment Models bestämmer schemat för GraphQL-frågor i AEM.

    • AEM GraphQL-scheman skapas så snart en innehållsfragmentmodell skapas, och de kan finnas både i författar- och publiceringsmiljöer.

    • Publiceringsscheman är de viktigaste eftersom de utgör grunden för leverans av innehåll i innehållsfragment i JSON-format.

  • Problem kan uppstå när modeller för innehållsfragment ändras, eller med andra ord redigeras. Det innebär att schemat ändras, vilket i sin tur kan påverka befintliga GraphQL-frågor.

  • Att lägga till nya fält i en innehållsfragmentmodell bör (vanligtvis) inte ha några skadliga effekter. Om du ändrar befintliga datafält (t.ex. namn) eller tar bort fältdefinitioner kommer befintliga GraphQL-frågor att brytas när de begär dessa fält.

Krav the-requirements

  • Att göra användarna medvetna om riskerna vid redigering av modeller som redan används för leverans av direktsänt innehåll, med andra ord, modeller som har publicerats).

  • För att undvika oönskade ändringar.

Någon av dessa kan göra att frågor bryts om de ändrade modellerna publiceras på nytt.

Lösningen the-solution

För att åtgärda dessa problem är Content Fragment Models låst i READ-ONLY-läge när de har skapats - så snart de har publicerats. Detta indikeras av Låst:

Kort för låst innehållsfragmentmodell

När modellen är Låst (i läget SKRIVSKYDDAD) kan du se innehållet och strukturen för modellerna, men du kan inte redigera dem.

Du kan hantera låsta modeller från konsolen eller modellredigeraren:

  • Konsol

    Från konsolen kan du hantera läget SKRIVSKYDDAD med åtgärderna Lås upp och Lås i verktygsfältet:

    Verktygsfält för låst innehållsfragmentmodell

    • Du kan Lås upp en modell om du vill aktivera redigeringar.

      Om du väljer Lås upp visas en varning och du måste bekräfta åtgärden Lås upp:
      Meddelande när innehållsfragmentmodellen låses upp

      Du kan sedan öppna modellen för redigering.

    • Du kan också låsa modellen i efterhand.

    • Om du publicerar om modellen återställs den omedelbart till läget Låst (SKRIVSKYDDAT).

  • Modellredigerare

    • När du öppnar en låst modell får du en varning och tre åtgärder visas: Avbryt, Visa skrivskyddad, Redigera:

      Meddelande när en låst innehållsfragmentmodell visas

    • Om du väljer Visa skrivskyddat kan du se modellens innehåll och struktur:

      Visa skrivskyddad - låst innehållsfragmentmodell

    • Om du väljer Redigera kan du redigera och spara dina uppdateringar:

      Redigera - låst innehållsfragmentmodell

      note note
      NOTE
      Det kan fortfarande finnas en varning överst, men det är när modellen redan används av befintliga innehållsfragment.
    • Avbryt återgår till konsolen.

recommendation-more-help
fbcff2a9-b6fe-4574-b04a-21e75df764ab