Adobe Target へのエクスペリエンスフラグメントの書き出し exporting-experience-fragments-to-adobe-target
Adobe Target(Target)向けに Adobe Experience Manager(AEM)で作成されたエクスペリエンスフラグメントを書き出すことができます。書き出したエクスペリエンスフラグメントは、Target アクティビティのオファーとして使用し、幅広くエクスペリエンスをテストおよびパーソナライズできます。
エクスペリエンスフラグメントをAdobe Target に書き出す際には、3 つのフォーマットオプションを利用できます。
- HTML(デフォルト):Web およびハイブリッドコンテンツ配信のサポート
- JSON:ヘッドレスコンテンツ配信のサポート
- HTML と JSON
AEM エクスペリエンスフラグメントは、Adobe Target のデフォルトワークスペースまたは Adobe Target のユーザー定義ワークスペースに書き出すことができます。これは、Adobe Developer Console を使用して行います。その場合、AEM は IMS を使用した Adobe Target と統合する必要があります。
前提条件 prerequisites
様々なアクションが必要です。
-
IMS を使用して AEM と Adobe Target を統合する必要があります。
note note NOTE IMS 統合が S2S OAuth で設定されるようになりました。 以前は JWT 資格情報を使用して設定が行われていましたが、この設定は現在 Adobe Developer Console で廃止予定です。 -
エクスペリエンスフラグメントは AEM オーサーインスタンスから書き出されます。このため、オーサーインスタンスで AEM Link Externalizer を設定し、エクスペリエンスフラグメント内の参照が web 配信用に外部化されるようにします。
note note NOTE デフォルトでカバーされていないリンクの書き換えについては、Experience Fragment Link リライタープロバイダーが利用可能です。これにより、インスタンスに合わせてカスタマイズされたルールを開発できます。
クラウド設定の追加 add-the-cloud-configuration
フラグメントを書き出す前に、Adobe Target 用の クラウド設定 をフラグメント、またはフォルダーに追加する必要があります。この結果、次のことも可能になります。
- 書き出しに使用する形式オプションを指定する
- Target ワークスペースを宛先として選択する
- エクスペリエンスフラグメントに含まれる参照を書き換えるための Externalizer ドメインを選択する(オプション)
必要なオプションは、必要なフォルダーやフラグメントの ページのプロパティ で選択できます。仕様は必要に応じて継承されます。
-
エクスペリエンスフラグメント コンソールに移動します。
-
適切なフォルダーまたはフラグメントの ページのプロパティ を開きます。
note note NOTE クラウド設定をエクスペリエンスフラグメントの親フォルダーに追加すると、設定はすべての子に継承されます。 クラウド設定をエクスペリエンスフラグメント自体に追加すると、その設定がすべてのバリエーションに継承されます。 -
「クラウドサービス」タブを選択します。
-
クラウドサービス設定 で、ドロップダウンリストから「Adobe Target」を選択します。
note note NOTE エクスペリエンスフラグメントオファーの JSON 形式はカスタマイズできます。これを行うには、カスタマーエクスペリエンスフラグメントコンポーネントを定義したあと、そのプロパティをコンポーネント Sling Model に書き出す方法に注釈を付けます。 コアコンポーネントを参照してください。 コアコンポーネント - エクスペリエンスフラグメント Adobe Target の下で、次を選択します。
- 適切な設定
- 必要な形式オプション
- Adobe Target ワークスペース
- Externalizer ドメイン(必要な場合)
note caution CAUTION Externalizer ドメインはオプションです。 AEM Externalizer を設定するのは、コンテンツの書き出し先を特定の 公開 ドメインに指定する場合です。詳しくは、AEM Link Externalizer の設定を参照してください。 また、Externalizer ドメインは、Target に送信されるエクスペリエンスフラグメントのコンテンツにのみ関係があり、「オファーコンテンツを表示」などのメタデータには関係しません。 例えば、フォルダーの場合は下図のようになります。
-
保存して閉じる。
Adobe Target へのエクスペリエンスフラグメントの書き出し exporting-an-experience-fragment-to-adobe-target
(クラウド設定を指定した後に)エクスペリエンスフラグメントを AEM から Target に書き出すには、次の手順を実行します。
-
エクスペリエンスフラグメントコンソールに移動します。
-
ターゲットに書き出すエクスペリエンスフラグメントを選択します。
note note NOTE エクスペリエンスフラグメント web のバリエーションである必要があります。 -
「Adobe Target に書き出し」をクリックします。
note note NOTE エクスペリエンスフラグメントが既に書き出されている場合は、「Adobe Target でアップデート」を選択します。 -
必要に応じて、「公開せずに書き出し」または「公開」をクリックします。
note note NOTE 「公開」を選択すると、エクスペリエンスフラグメントはすぐに公開され、Target に送信されます。 -
確認ダイアログで「OK」をクリックします。
エクスペリエンスフラグメントは Target に送信されています。
note note NOTE 書き出しについての様々な詳細は、コンソールの リスト表示 と プロパティ で参照できます。 note note NOTE Adobe Target でエクスペリエンスフラグメントを表示すると、表示される 最終変更日 は、フラグメントが最後に Adobe Target に書き出された日付ではなく、AEM でフラグメントが最後に変更された日付です。
Adobe Target でのエクスペリエンスフラグメントの使用 using-your-experience-fragments-in-adobe-target
ここまでのタスクを完了すると、エクスペリエンスフラグメントが Adobe Target のオファーページに表示されます。Target 側でできることを詳しく知るには、Target 固有のドキュメントを参照してください。
Adobe Target に書き出し済みのエクスペリエンスフラグメントの削除 deleting-an-experience-fragment-already-exported-to-adobe-target
Target に書き出し済みのエクスペリエンスフラグメントを削除すると、そのフラグメントが既に Adobe Target のオファーで使用されている場合は、問題が発生する可能性があります。フラグメントコンテンツが AEM によって配信されるので、フラグメントを削除すると、オファーが使用できなくなります。
このような状況を回避するには、次の手順に従います。
-
エクスペリエンスフラグメントが現在アクティビティで使用されていない場合、AEM ではユーザーが警告メッセージを表示せずにフラグメントを削除できます。
-
エクスペリエンスフラグメントが Adobe Target のアクティビティで使用されている場合、フラグメントを削除するとアクティビティに影響が及ぶ可能性があると、AEM ユーザーに警告メッセージが表示されます。
AEM のエラーメッセージは、ユーザーによるエクスペリエンスフラグメントの(強制)削除を禁止するものではありません。エクスペリエンスフラグメントが削除された場合は、次のような結果になります。
-
AEM エクスペリエンスフラグメントを使用した Target オファーで望ましくない動作が見られる場合があります。
- エクスペリエンスフラグメント HTML が Target にプッシュされたため、オファーが引き続きレンダリングされる可能性があります。
- 参照されているアセットが AEM でも削除されている場合、エクスペリエンスフラグメント内の参照はどれも正しく機能しない可能性があります。
-
エクスペリエンスフラグメントは AEM にはもう存在しないため、さらに変更することは不可能です。
-
Target に書き出したエクスペリエンスフラグメントからの ClientLibs の削除 removing-clientlibs-from-fragments-exported-target
エクスペリエンスフラグメントには、完全な HTML タグと、エクスペリエンスフラグメントコンテンツ作成者が作成したとおりにフラグメントをレンダリングするために必要なすべてのクライアントライブラリ(CSS/JS)が含まれています。これは仕様によるものです。
AEM によって配信されるページで Adobe Target とエクスペリエンスフラグメントオファーを併用する場合、ターゲットページには必要なすべてのクライアントライブラリが既に含まれています。また、エクスペリエンスフラグメントオファーの不要な HTML も必要ありません(考慮事項を参照)。
次に、エクスペリエンスフラグメントオファーの HTML の擬似例を示します。
<!DOCTYPE>
<html>
<head>
<title>…</title>
<!-- all the client libraries (css/js) -->
…
</head>
<body>
<!--/* Actual XF Offer content would appear here... */-->
</body>
</html>
大まかに言えば、AEM が Adobe Target にエクスペリエンスフラグメントを書き出す際に、いくつかの追加の Sling セレクターを使用します。例えば、書き出されたエクスペリエンスフラグメントの URL は次のようになります(nocloudconfigs.atoffer
に注意)。
- http://www.your-aem-instance.com/content/experience-fragments/my-offers/my-xf-offer.nocloudconfigs.atoffer.html
nocloudconfigs
セレクターは HTL を使用して定義され、次の場所からコピーしてオーバーレイできます。
- /libs/cq/experience-fragments/components/xfpage/nocloudconfigs.html
atoffer
セレクターは、Sling Rewriter を使用した後処理で適用されます。いずれかを使用して、クライアントライブラリを削除できます。
例 example
ここでは、nocloudconfigs
を使用してこれを行う方法を説明します。
オーバーレイ overlays
この特定の例では、オーバーレイが含まれているため、クライアントライブラリ と 不要な HTML が削除されます。エクスペリエンスフラグメントのテンプレートタイプを既に作成していることを前提としています。 /libs/cq/experience-fragments/components/xfpage/
からコピーする必要がある必要なファイルは次のとおりです。
nocloudconfigs.html
head.nocloudconfigs.html
body.nocloudconfigs.html
テンプレートタイプのオーバーレイ template-type-overlays
この例では、次の構造を使用します。
これらのファイルの内容は次のとおりです。
-
body.nocloudconfigs.html
-
head.nocloudconfigs.html
-
nocloudconfigs.html
data-sly-unwrap
を使用して本文タグを削除するには、nocloudconfigs.html
が必要です。検討事項 considerations
Adobe Target でエクスペリエンスフラグメントオファーを使用して AEM サイトと AEM 以外のサイトの両方をサポートする必要がある場合は、2 つのエクスペリエンスフラグメント(2 つの異なるテンプレートタイプ)を作成する必要があります。
-
clientlibs/extra html を削除するオーバーレイを使用しているもの
-
オーバーレイがなく、必要な clientlibs が含まれているもの