オーサリングからパブリッシングへ:Edge Delivery Services での AEM Forms
この機能は、早期アクセスプログラムを通じて使用できます。アクセス権をリクエストするには、GitHub 組織名とリポジトリ名を記載したメールを公式アドレスから aem-forms-ea@adobe.com に送信してください。例えば、リポジトリ URL が https://github.com/adobe/abc の場合、組織名は「adobe」、リポジトリ名は「abc」になります。
Adobe Experience Manager(AEM)を使用すると、魅力的でレスポンシブ、かつ動的なフォームを作成できます。それぞれ異なる要件やユーザーの専門知識のレベルに適した、複数のオーサリング方法を提供します。
この記事では、AEM 環境内でフォームを作成し、Edge Delivery Services を通じてフォームを公開するアプローチに重点を置いて説明します。コアコンポーネントベースのテンプレートを使用して構築されたフォームは、AEM と Edge Delivery Services の両方で公開でき、柔軟なデプロイメントが可能です。これに対し、Edge Delivery Services ベースのテンプレートを使用して作成したフォームは、Edge Delivery Services でのみ公開できます。
AEM でのフォームのオーサリングと Edge Delivery Services を使用したパブリッシングの利点:
-
既存の AEM ワークフローの保持:組織は確立された AEM ワークフローとガバナンス構造を引き続き使用して、コンテンツ作成の一貫性と制御を確保できます。
-
パフォーマンスの向上:Edge Delivery Services を通じて公開すると、レンダリング時間が短縮され、ユーザーエクスペリエンスが向上し、ページ読み込み時間が短縮されます。
-
SEO の向上:Edge Delivery Services は、Google Lighthouse のスコアが高いコンテンツを配信するように設計されているので、検索エンジンの最適化と可視性の向上につながります。
-
柔軟なデプロイメントオプション:コアコンポーネントで構築されたフォームは、AEM と Edge Delivery Services の両方で公開でき、柔軟なデプロイメント戦略を実現します。
開始する前に
AEM でフォームのオーサリングを開始し、Edge Delivery Services を使用してフォームを公開する前に、次の前提条件が満たされていることを確認してください。
-
Edge Delivery Services 用に Github リポジトリが設定されていることを確認します。
- リポジトリがない場合は、アダプティブフォームブロックにより事前設定された新しい AEM プロジェクトを使用します。
- リポジトリがある場合は、アダプティブフォームブロックを既存のリポジトリに追加します。手順について詳しくは、AEM Forms 用 Edge Delivery Services の概要を参照してください。
-
AEM 環境と GitHub リポジトリの間の接続を確立します。その方法
アダプティブフォームの設定とパブリッシングをガイドする決定フロー図:
AEM でのフォームのオーサリングと Edge Delivery Services へのパブリッシング
AEM でのフォームのオーサリングと Edge Delivery Services での公開を行うには、次の手順に従います。
テンプレートの選択とフォームの作成
次の方法を使用して、AEM インスタンスでフォームを作成し、Edge Delivery Services に公開できます。
テンプレートを選択してフォームを作成するには、次の手順を実行します。
-
AEM Forms as a Cloud Service オーサーインスタンスにログインします。
-
Adobe Experience Manager/フォーム/フォームとドキュメント を選択します。
-
作成/アダプティブフォーム を選択します。ウィザードが開きます。
-
「ソース」タブで、Edge Delivery Services ベースのテンプレート を選択します。
Edge Delivery Services ベースのテンプレート を選択すると、「作成」ボタンが有効になります。
-
(オプション)「データソース」タブまたは「送信」タブで、データソースまたは送信アクションを選択できます。
-
(オプション)「配信」タブで、フォームの公開日または非公開日を指定できます。
-
「作成」をクリックすると、フォームを作成 ウィザードが表示されます。
- 「名前」と「タイトル」を指定します。
- GitHub URL を指定します。例えば、GitHub リポジトリの名前が
edsforms
で、アカウントwkndforms
の下にある場合、URL は次のようになります。https://github.com/wkndforms/edsforms
「作成」をクリックすると、フォームがオーサリング用のユニバーサルエディターで開きます。
-
「作成」をクリックしてフォームを作成します。これで、ユニバーサルエディターを使用してフォームをオーサリングできます。
テンプレートを選択してフォームを作成するには、次の手順を実行します。
-
AEM Forms as a Cloud Service オーサーインスタンスにログインします。
-
Adobe Experience Manager/フォーム/フォームとドキュメント を選択します。
-
作成/アダプティブフォーム を選択します。ウィザードが開きます。
-
「ソース」タブで、コアコンポーネントベースのテンプレート と テーマ を選択すると、「作成」ボタンが有効になります。
-
(オプション)「データソース」タブまたは「送信」タブで、データソースまたは送信アクションを選択できます。
-
(オプション)「配信」タブで、フォームの公開日または非公開日を指定できます。
-
「作成」をクリックすると、フォームを作成 ウィザードが表示されます。
- 「名前」と「タイトル」を指定します。
- アダプティブフォームを保存する場所を「パス」フィールドで指定します。
「作成」をクリックすると、フォームがオーサリング用のアダプティブフォームエディターで開きます。
-
「作成」をクリックしてフォームを作成します。これで、アダプティブフォームエディターを使用してフォームをオーサリングできます。
フォームのオーサリング
Edge Delivery Services ベースのテンプレートを使用して作成されたフォームは、オーサリング用にユニバーサルエディターで開きます。ただし、コアコンポーネントベースのテンプレートを使用して作成されたフォームは、オーサリング用にアダプティブフォームエディターで開きます。
Edge Delivery Services ベースのテンプレートのユニバーサルエディターや、コアコンポーネントベースのテンプレートのアダプティブフォームエディターを使用してフォームを作成するには、次の手順を実行します。
-
コンテンツブラウザーを開き、コンテンツツリー の アダプティブフォーム コンポーネントに移動します。
-
「追加」アイコンをクリックし、アダプティブフォームコンポーネント リストから目的のコンポーネントを追加します。
以下のスクリーンショットは、ユニバーサルエディターでオーサリングした
Registration Form
フォームを示しています。
note note |
---|
NOTE |
ユニバーサルエディターを使用したアダプティブフォームのオーサリング手順について詳しくは、こちらをクリックしてください。 |
これで、フォームの送信アクションを設定およびカスタマイズできます。
-
「コンポーネントをここにドラッグ」セクションで「コンポーネントを挿入」をクリックします。
-
アダプティブフォームコンポーネント リストから目的のコンポーネントを追加します。
以下のスクリーンショットは、アダプティブフォームエディターでオーサリングした Enrollment Form
フォームを示しています。
note note |
---|
NOTE |
コアコンポーネントテンプレートに基づくアダプティブフォームの作成に関するガイダンスについて詳しくは、こちらをクリックしてください。 |
これで、フォームの送信アクションを設定できます。
フォームの公開
Edge Delivery Services でアダプティブフォームを公開するには、AEM インスタンスで Edge Delivery Services 設定を作成する必要があります。
Edge Delivery Services 設定の作成
Edge Delivery Services 設定を作成するには、次の手順を実行します。
Edge Delivery Services ベースのテンプレートに基づくフォームの Edge Delivery Services 設定は、フォームの設定コンテナに自動的に作成されます。
-
AEM Forms as a Cloud Service オーサーインスタンスで、ツール/クラウドサービス/Edge Delivery Services 設定 に移動します。
-
フォームの名前に一致するフォルダーを選択します。例えば、フォームの名前が
enrollment-form
の場合は、フォルダーforms/enrollment-form
を選択し、作成/設定 をクリックします。 -
「Edge Delivery Services 設定」をクリックし、「プロパティ」をクリックしてプロパティを開きます。
Edge Delivery Services 設定が表示されます。
-
Edge Delivery Services 設定で、次を指定します。
-
組織:GitHub の組織名を指定します。
-
サイト名:GitHub のリポジトリ名を指定します。
-
分岐:分岐名を指定します。main 分岐を使用する場合は、テキストボックスを空のままにします。
-
(オプション)Edge ホスト:「Edge ホスト」オプションはそのままにしておきます。フォームは、プレビュー(.page)環境とライブ(.live)環境の両方に公開されます。
-
(オプション)サイト認証トークン:サイト認証トークンを使用して、AEM インスタンスと Edge Delivery Services 間のリクエストを安全に認証します。
-
-
「保存して閉じる」をクリックします。設定が作成されます。
Edge Delivery Services のフォームへのアクセス
Edge Delivery Services のフォームにアクセスするには、フォームの公開が必須です。フォームを公開するには、次の手順を実行します。
- ユニバーサルエディターの右上隅にある「公開」ボタンをクリックして、フォームを公開します。
note note |
---|
NOTE |
フォームを Edge Delivery Services に公開する方法について詳しくは、公開とデプロイの記事を参照してください。 |
-
Experience Manager Forms コンソールで、親フォルダーに移動し、公開するフォームを選択します。
-
ツールバーの「公開」オプションをクリックし、フォームと共に公開されるすべての参照アセットを確認します。
note note |
---|
NOTE |
アダプティブフォームエディターでフォームを公開する方法について詳しくは、Experience Manager Forms での公開の管理を参照してください。 |
-
ステージングされたバージョン(テスト用):ステージングされたバージョンには、テスト目的でフォームの非公開の作業用バージョンが表示されます。 フォームを公開する前にプレビューするには、次の URL 形式を使用します。
https://<branch>--<repo>--<owner>.aem.page/content/forms/af/<form_name>
-
ライブバージョン(公開済みフォーム):ライブバージョンには、エンドユーザーがアクセスできるフォームの最新公開バージョンが表示されます。 フォームの公開済みライブバージョンにアクセスするには、次の URL 形式を使用します。
https://<branch>--<repo>--<owner>.aem.live/content/forms/af/<form_name>
URL 構造は、ステージングされたバージョンとライブバージョンの両方で同じままです。ただし、表示されるコンテンツはコンテキストに基づいて異なります。
以下のスクリーンショットでは、Edge Delivery Services ベースおよびコアコンポーネントベースのテンプレートを使用して作成されたフォームのステージング済みフォーム URL とライブフォーム URL、およびビジュアルプレビューを比較しています。
table 0-row-2 1-row-2 2-row-2 | |
---|---|
バージョン | 画像 |
ステージング済みバージョン |
![]() |
ライブバージョン |
![]() |
table 0-row-2 1-row-2 2-row-2 | |
---|---|
バージョン | 画像 |
ステージング済みバージョン |
![]() |
ライブバージョン |
![]() |
トラブルシューティング
フォームの読み込みに問題がありますか? 一般的な問題と修正方法を以下に示します。
-
フォーム URL:フォームの URL の末尾に「.html」拡張子が含まれていないことを再確認します。 Edge Deliver Service では、この拡張機能は必要ありません。
-
AEM オーサー URL:
fstab.yaml
ファイルにリストされている AEM オーサー URL が正しい形式であることを確認します。 これには、次の詳細を含める必要があります。- 正しい GitHub 所有者
- 正しいリポジトリ名
- Edge Delivery Services に使用している特定の分岐