Komma igång med Edge Delivery Services för AEM Forms med Universal Editor
Edge Delivery Services for AEM Forms kombinerar högpresterande webbpublicering med WYSIWYG i Universal Editor. Den här guiden beskriver hur du skapar, anpassar och publicerar snabbt inlästa formulär.
Vad du kommer att göra
I slutet av kursen kommer du att:
- Konfigurera en GitHub-databas med det adaptiva Forms-blocket
- Skapa en AEM Site som är integrerad med Edge Delivery Services
- Bygg och publicera blanketter med Universal Editor
- Konfigurera lokal utvecklingsmiljö
Välj din sökväg
Välj den metod som matchar ditt scenario:
Figur: Visuell guide som hjälper dig att välja rätt implementeringsväg
Förutsättningar
För att Edge Delivery Services för AEM Forms ska fungera smidigt och framgångsrikt med Universal Editor bör du kontrollera och bekräfta följande innan du fortsätter:
Åtkomstkrav
- GitHub-konto: Du måste ha ett GitHub-konto med behörighet för att skapa nya databaser. Detta är nödvändigt för att du ska kunna hantera din källkod och samarbeta med ditt team.
- AEM as a Cloud Service Authoring Access: Kontrollera att du har behörighet på författarnivå till din AEM as a Cloud Service-miljö. Den här åtkomsten krävs för att skapa, redigera och publicera formulär.
Tekniska krav
- Bekanta dig med Git: Du bör känna dig bekväm med att utföra grundläggande Git-åtgärder som att klona databaser, genomföra ändringar och skicka uppdateringar. Dessa färdigheter är grundläggande för källkontroll och projektsamarbete.
- Förstå webbtekniker: Vi rekommenderar en fungerande kunskap om HTML, CSS och JavaScript. Dessa tekniker utgör grunden för formuläranpassning och felsökning.
- Node.js (version 16 eller senare): Node.js krävs för lokal utveckling och för att köra byggverktyg. Kontrollera att du har version 16 eller senare installerad på datorn.
- Pakethanteraren (npm eller garn): Du behöver antingen npm (Node Package Manager) eller garn för att hantera projektberoenden och skript.
Rekommenderad bakgrund
- AEM Sites Concepts: En grundläggande förståelse för AEM Sites, inklusive webbplatsstruktur och innehållsutveckling, hjälper dig att navigera och integrera formulär effektivt.
- Principer för formulärdesign: Om du är bekant med bästa praxis för formulärdesign, till exempel användbarhet, tillgänglighet och datavalidering, kan du skapa effektiva och användarvänliga formulär.
- Upplevelse med WYSIWYG Editors: Tidigare erfarenheter med What You See Is What You Get (WYSIWYG) Editor hjälper dig att utnyttja den universella redigerarens visuella redigeringsfunktioner effektivare.
Sökväg A: Skapa ett nytt projekt med Forms
Rekommenderas för: Nya projekt, piloter eller konceptbevisinitiativ
Dra nytta av AEM Forms Boilerplate för att snabba upp projektinstallationen. Den här mallen innehåller en färdig mall som smidigt integrerar det adaptiva Forms-blocket så att du snabbt kan skapa och distribuera formulär på din AEM-webbplats.
Ökning
Så här startar du ditt nya projekt med integrerade formulär:
- Skapa en GitHub-databas med AEM Forms-mallen för mallar.
- Konfigurera AEM Code Sync för att automatisera innehållssynkroniseringen mellan AEM och databasen.
- Konfigurera anslutningen mellan GitHub-projektet och AEM-miljön.
- Skapa och publicera en ny AEM-webbplats.
- Lägg till och hantera formulär med den universella redigeraren.
Följande avsnitt vägleder dig steg för steg i detalj, vilket ger en smidig och effektiv projektkonfiguration.
-
Öppna AEM Forms-mallen för mallar
Bild: AEM Forms-standarddatabas med förkonfigurerat adaptivt Forms-block -
Skapa din databas
- Klicka på Använd mallen > Skapa en ny databas
Figur: Använda mallen för att skapa en ny databas -
Konfigurera databasinställningar
- Ägare: Välj ditt GitHub-konto eller din organisation
- Databasnamn: Välj ett beskrivande namn (till exempel
my-forms-project
) - Synlighet: Välj Offentlig (rekommenderas för Edge Delivery Services)
- Klicka på Skapa databas
Bild: Konfigurera din nya databas med synlighet
Validering: Bekräfta att du har en ny GitHub-databas som är baserad på AEM Forms-mallen Boilerplate.
AEM Code Sync synkroniserar automatiskt innehållsändringar mellan din AEM-redigeringsmiljö och din GitHub-databas.
-
Installera GitHub App
-
Konfigurera åtkomstbehörigheter
- Välj Välj bara databaser
- Välj din nya databas
- Klicka på Spara
Bild: Installerar AEM Code Sync med databasspecifika behörigheter
Kontrollpunkt: AEM Code Sync är nu installerat och har åtkomst till din databas.
Filen fstab.yaml
ansluter din GitHub-databas till AEM-redigeringsmiljö för innehållssynkronisering.
-
Navigera till din databas
- Gå till din nya GitHub-databas
- Du bör se AEM Forms-mallfilerna
-
Skapa filen fstab.yaml
- Klicka på Lägg till fil > Skapa ny fil i rotkatalogen
- Namnge filen
fstab.yaml
Figur: Skapar konfigurationsfilen fstab.yaml -
Lägg till din AEM-anslutningsinformation
Kopiera och klistra in följande konfiguration och ersätt platshållarna:
code language-yaml mountpoints: /: url: https://<aem-author>/bin/franklin.delivery/<owner>/<repository>/main type: "markup" suffix: ".html"
Ersätt:
<aem-author>
: Din URL för AEM as a Cloud Service-författare (t.ex.author-p12345-e67890.adobeaemcloud.com
)<owner>
: ditt GitHub-användarnamn eller din organisation<repository>
: Ditt databasnamn
Exempel:
code language-yaml mountpoints: /: https://author-p12345-e67890.adobeaemcloud.com/bin/franklin.delivery/mycompany/my-forms-project/main
Bild: Konfigurerar monteringspunkten för AEM-integrering -
Bekräfta konfigurationen
- Lägg till ett implementeringsmeddelande: "Add AEM integration configuration"
- Klicka på Genomför ny fil
Bild: Bekräftar fstab.yaml-konfigurationen
Validering: Bekräfta din GitHub-databasanslutning till AEM.
note note |
---|
NOTE |
Har du byggproblem? Se Felsökning av GitHub-byggproblem. |
-
Öppna AEM Sites-konsolen
- Logga in i din AEM as a Cloud Service-instans
- Navigera till Webbplatser
Bild: Åtkomst till AEM Sites-konsolen -
Börja skapa webbplats
- Klicka på Skapa > Plats från mall
Figur: Skapa en ny webbplats från mallen -
Välj Edge Delivery Services-mallen
- Välj mallen Edge Delivery Services Site
- Klicka på Nästa
Bild: Välja Edge Delivery Services-webbplatsmallnote note NOTE Mallen är inte tillgänglig? Om du inte ser Edge Delivery Services-mallen: - Klicka på Importera för att överföra mallen
- Hämta mallar från GitHub-versioner
-
Konfigurera din plats
Ange följande information:
table 0-row-3 1-row-3 2-row-3 3-row-3 Fält Värde Exempel Platstitel Beskrivande namn för webbplatsen "Mitt Forms-projekt" Platsnamn URL-vänligt namn "my-forms-project" GitHub-URL Din databas-URL https://github.com/mycompany/my-forms-project
Bild: Konfigurera din nya AEM-webbplats med GitHub-integrering -
Slutför webbplatsskapandet
- Granska dina inställningar
- Klicka på Skapa
Bild: Bekräfta skapande av webbplatsKlart! Din AEM-webbplats har nu skapats och är ansluten till GitHub.
-
Öppna i Universal Editor
- Leta reda på din nya plats i webbplatskonsolen
- Välj sidan
index
- Klicka på Redigera
Bild: Öppnar webbplatsen för redigeringUniversal Editor öppnas på en ny flik med funktioner för WYSIWYG-redigering.
Bild: Din webbplats har öppnats i Universal Editor för WYSIWYG-redigering
Verifiering: Bekräfta att din AEM-webbplats är klar för formulärredigering.
Med publicering blir din webbplats tillgänglig på Edge Delivery Services för global åtkomst.
-
Snabbpublicering från webbplatskonsolen
- Återgå till AEM Sites Console
- Markera dina webbplatssidor (eller markera alla med Ctrl+A)
- Klicka på Snabbpublicering
Figur: Välja sidor för snabb publicering -
Bekräfta publicering
- Klicka på Publicera i bekräftelsedialogrutan
Bild: Bekräfta publiceringsåtgärdenAlternativ: Du kan även publicera direkt från Universal Editor med knappen Publicera.
Figur: Publicera direkt från Universal Editor -
Åtkomst till din aktiva webbplats
Webbplatsen finns nu på:
code language-none https://<branch>--<repo>--<owner>.aem.page/content/<site-name>/
URL-strukturen förklaras:
<branch>
: GitHub-gren (vanligenmain
)<repo>
: Ditt databasnamn<owner>
: ditt GitHub-användarnamn eller din organisation<site-name>
: Ditt AEM-webbplatsnamn
Exempel:
code language-none https://main--my-forms-project--mycompany.aem.page/content/my-forms-project/
Verifiering: Bekräfta att din webbplats är publicerad på Edge Delivery Services.
note tip |
---|
TIP |
URL-mönster: |
|
Nästa: Skapa ditt första formulär
Sökväg B: Lägg till Forms i befintligt projekt
Bäst för: Befintlig AEM Sites med Edge Delivery Services
Om du redan har ett AEM-projekt med Edge Delivery Services kan du lägga till formulärfunktioner genom att integrera Adaptive Forms Block.
Krav för sökväg B
För att kunna integrera formulär i ditt befintliga AEM-projekt måste följande krav vara uppfyllda:
- Du har ett befintligt AEM-projekt som har skapats med AEM Boilerplate XWalk.
- Du har konfigurerat en lokal utvecklingsmiljö
- Du har Git-åtkomst till projektdatabasen, vilket gör att du kan klona, ändra och skicka ändringar efter behov.
Följande guide ger en strukturerad metod för att lägga till formulärfunktioner i ditt befintliga projekt. Varje steg är utformat för att säkerställa en sömlös integrering och optimala funktioner i den universella redigeringsmiljön.
Ökning
Du kommer att slutföra följande steg på hög nivå:
- Kopiera de adaptiva Forms-blockfilerna till ditt projekt.
- Uppdatera projektets konfiguration för att identifiera och ge support för formulärkomponenter.
- Justera ESLint-regler så att de nya filerna och kodningsmönstren får plats.
- Bygg ditt projekt och implementera ändringarna i din databas.
-
Navigera till ditt lokala projekt
code language-bash cd /path/to/your/aem-project
-
Hämta nödvändiga filer från AEM Forms-standardmallen
Kopiera de här filerna från AEM Forms-databasen:
table 0-row-3 1-row-3 2-row-3 3-row-3 Source Mål Syfte blocks/form/
blocks/form/
Kärnfunktioner scripts/form-editor-support.js
scripts/form-editor-support.js
Integrering med Universal Editor scripts/form-editor-support.css
scripts/form-editor-support.css
Redigerarens format -
Stöd för uppdateringsredigerare
- Ersätt din
/scripts/editor-support.js
-fil med editor-support.js från AEM Forms Boilerplate
- Ersätt din
Verifiering: Bekräfta att formulärblocksfiler finns i ditt projekt.
-
Uppdatera avsnittsmodell
Öppna
/models/_section.json
och lägg till formulärkomponenter i filtren:code language-json { "filters": [ { "id": "section", "components": [ "text", "image", "button", "form", "embed-adaptive-form" ] } ] }
Vad detta gör: Aktiverar formulärkomponenter i komponentväljaren för Universal Editor.
Verifiering: Bekräfta formulärkomponenter visas i Universell redigerare.
Varför det här steget: Förhindrar lintingfel från formulärspecifika filer och konfigurerar korrekta valideringsregler.
-
Uppdatera .eslintignore
Lägg till de här raderna i
/.eslintignore
:code language-bash # Form block rule engine files blocks/form/rules/formula/* blocks/form/rules/model/* blocks/form/rules/functions.js scripts/editor-support.js scripts/editor-support-rte.js
-
Uppdatera .eslintrc.js
Lägg till de här reglerna i objektet
rules
i/.eslintrc.js
:code language-javascript { "rules": { // Existing rules... // Form component cell limits 'xwalk/max-cells': ['error', { '*': 4, // default limit form: 15, wizard: 12, 'form-button': 7, 'checkbox-group': 20, checkbox: 19, 'date-input': 21, 'drop-down': 19, email: 22, 'file-input': 20, 'form-fragment': 15, 'form-image': 7, 'multiline-input': 23, 'number-input': 22, panel: 17, 'radio-group': 20, 'form-reset-button': 7, 'form-submit-button': 7, 'telephone-input': 20, 'text-input': 23, accordion: 14, modal: 11, rating: 18, password: 20, tnc: 12 }], // Disable this rule for forms 'xwalk/no-orphan-collapsible-fields': 'off' } }
Validering: Bekräfta ESLint fungerar med formulärkomponenter.
-
Installera beroenden och bygg
code language-bash # Install any new dependencies npm install # Build component definitions npm run build:json
Vad detta gör:
- Uppdaterar
component-definition.json
med formulärkomponenter - Skapar
component-models.json
med formulärmodeller - Skapar
component-filters.json
med filtreringsregler
- Uppdaterar
-
Verifiera genererade filer
Kontrollera att de här filerna i projektroten innehåller formulärrelaterade objekt:
component-definition.json
component-models.json
component-filters.json
-
Verkställ och skicka ändringar
code language-bash git add . git commit -m "Add Adaptive Forms Block integration" git push origin main
Validering: Bekräfta att ditt projekt innehåller formulärfunktioner.
Nästa: Skapa ditt första formulär
Skapa ditt första formulär
Vem ska följa det här avsnittet:
Det här avsnittet gäller användare som följer antingen Sökväg A (nytt projekt) eller Sökväg B (befintligt projekt).
Nu när ditt projekt är utrustat för att skapa formulär kan du skapa ditt första formulär med den intuitiva WYSIWYG-redigeringsmiljön. I följande steg beskrivs hur du utformar, konfigurerar och publicerar ett formulär på din AEM-webbplats på ett strukturerat sätt.
Ökning
Processen med att skapa ett formulär i Universal Editor består av flera viktiga steg:
-
Infoga det adaptiva formulärblocket
Börja med att lägga till det adaptiva formulärblocket på den valda sidan. -
Lägg till formulärkomponenter
Fyll i formuläret genom att infoga komponenter som textfält, knappar och andra indataelement. -
Konfigurera komponentegenskaper
Justera inställningarna och egenskaperna för varje komponent så att de uppfyller formulärets krav. -
Förhandsgranska och testa formuläret
Använd förhandsgranskningsfunktionen för att validera formulärets utseende och beteende innan det publiceras. -
Publicera den uppdaterade sidan
När du är nöjd publicerar du sidan så att den blir tillgänglig för slutanvändarna.
I följande avsnitt beskrivs dessa steg i detalj, vilket ger en smidig och effektiv formulärskaparupplevelse.
-
Öppna sidan i Universal Editor
- Navigera till konsolen Platser i AEM
- Markera sidan där du vill lägga till ett formulär (t.ex.
index
) - Klicka på Redigera
Sidan öppnas i Universal Editor för WYSIWYG-redigering.
-
Lägg till komponenten Adaptivt formulär
- Öppna panelen Innehållsträd (vänster sidospalt)
- Navigera till ett avsnitt där du vill lägga till formuläret
- Klicka på ikonen Lägg till (+)
- Välj Adaptivt formulär i komponentlistan
Bild: Lägga till ett adaptivt formulärblock på sidan
Verifiering: Bekräfta att du har en tom formulärbehållare.
-
Navigera till ditt formulärblock
- Leta reda på ditt nya adaptiva formuläravsnitt i innehållsträdet
Figur: Adaptivt formulärblock i innehållsträdet -
Lägg till formulärkomponenter
Du kan lägga till komponenter på två sätt:
Metod A: Klicka för att lägga till
- Klicka på ikonen Lägg till (+) i formuläravsnittet
- Välj komponenter i listan Adaptiva formulärkomponenter
Metod B: Dra och släpp
- Dra komponenter direkt från komponentpanelen till formuläret
Figur: Lägga till komponenter i formuläretRekommenderade startkomponenter:
- Textindata (för namn, e-post)
- Textområde (för meddelanden)
- Skicka-knapp
-
Konfigurera komponentegenskaper
-
Markera en formulärkomponent
-
Använd panelen Egenskaper (höger sidofält) för att konfigurera:
- Etiketter och platshållare
- Valideringsregler
- Obligatoriska fältinställningar
Figur: Konfigurera komponentegenskaper -
-
Förhandsgranska formuläret
Formuläret ser ut ungefär så här:
Figur: Exempelformulär som har skapats med den universella redigeraren
Verifiering: Bekräfta att formuläret är klart för publicering.
note important |
---|
IMPORTANT |
Kom ihåg att publicera sidan när du har gjort ändringar för att se uppdateringar i webbläsaren. |
-
Publicera från universell redigerare
- Klicka på knappen Publicera i Universell redigerare
Figur: Publicera formuläret från den universella redigeraren -
Bekräfta publicering
- Klicka på Publicera i bekräftelsedialogrutan
Bild: Bekräfta publiceringsåtgärdenEtt meddelande som bekräftar publiceringen visas.
Figur: Publiceringsbekräftelse lyckades -
Visa ditt live-formulär
Ditt formulär finns nu på:
code language-none https://<branch>--<repo>--<owner>.aem.live/content/<site-name>/
Exempel-URL:
code language-none https://main--my-forms-project--mycompany.aem.live/content/my-forms-project/
Figur: Din publicerade formulärsida på Edge Delivery Services
Grattis! Ditt formulär är nu öppet och kan samla in inskickade svar.
Nästa steg
Nu när du har ett fungerande formulär kan du:
- Anpassa format genom att redigera CSS- och JavaScript-filer
- Lägg till avancerade formulärfunktioner, som valideringsregler och villkorslogik
- Konfigurera lokal utveckling för snabbare iteration
- Skapa fristående formulär för särskilda användningsfall
Konfigurera lokal utvecklingsmiljö
Passar bäst för: Utvecklare som vill anpassa formulärformatering och -beteende
Med en lokal utvecklingsmiljö kan du göra ändringar och se dem direkt utan att behöva gå igenom publiceringscykeln.
-
Installera AEM CLI
AEM CLI förenklar lokala utvecklingsuppgifter:
code language-bash npm install -g @adobe/aem-cli
-
Klona din databas
code language-bash git clone https://github.com/<owner>/<repo> cd <repo>
Ersätt
<owner>
och<repo>
med dina faktiska GitHub-uppgifter. -
Starta den lokala utvecklingsservern
code language-bash aem up
Detta startar en lokal server med funktioner för att ladda upp filer under drift.
-
Gör anpassningar
- Redigera filer i katalogen
blocks/form/
för formulärformat och -beteende - Ändra
form.css
för formatering - Uppdatera
form.js
för beteende
Se ändringarna direkt i webbläsaren på
http://localhost:3000
- Redigera filer i katalogen
-
Distribuera dina ändringar
code language-bash git add . git commit -m "Custom form styling" git push origin main
Ändringarna finns på:
- Förhandsgranska:
https://<branch>--<repo>--<owner>.aem.page/content/<site-name>
- Produktion:
https://<branch>--<repo>--<owner>.aem.live/content/<site-name>
- Förhandsgranska:
Felsökning
Vanliga problem och lösningar
Problem: Fel vid skapande eller lintingfel
Lösning 1: Hantera lintingfel
Om det uppstår lintingfel:
-
Öppna
package.json
i projektets rot -
Hitta skriptet
lint
:code language-json "scripts": { "lint": "npm run lint:js && npm run lint:css" }
-
Inaktivera linting tillfälligt:
code language-json "scripts": { "lint": "echo 'skipping linting for now'" }
-
Verkställ och skicka ändringarna
Lösning 2: Sökvägsfel för modul
Om du ser"Det går inte att matcha sökvägen till modulen '/scripts/lib-franklin.js'":
-
Navigera till
blocks/form/form.js
-
Uppdatera importsatsen:
code language-javascript // Change this: import { ... } from '/scripts/lib-franklin.js'; // To this: import { ... } from '/scripts/aem.js';
Problem: Formuläröverföringar fungerar inte
Lösningar:
- Kontrollera att du har en komponent för Skicka-knapp
- Kontrollera URL-konfiguration för formuläråtgärd
- Verifiera formulärverifieringsregler
- Testa i förhandsgranskningsläge först
Problem: Formateringsproblem
Lösningar:
- Kontrollera CSS-filsökvägar i
blocks/form/
- Rensa webbläsarcache
- Verifiera CSS-syntax
- Testa i den lokala utvecklingsmiljön
Problem: Formulärkomponenter visas inte i den universella redigeraren
Lösningar:
- Kontrollera att AEM Code Sync är installerat och körs
- Kontrollera att
fstab.yaml
har rätt URL för AEM-författare - Kontrollera att tidig åtkomst är aktiverat för din AEM-instans
- Bekräfta att
component-definition.json
innehåller formulärkomponenter
Problem: Ändringar som inte visas efter publicering
Lösningar:
- Vänta på CDN-cacheuppdatering
- Kontrollera webbläsarens cacheminne (prova incognito/private mode)
- Kontrollera att rätt URL-format används