現在表示中:

フラグメントオーサリング用コンポーネント

警告:

実際のコンポーネントはまだ変更される可能性があるので、拡張または変更は推奨されません。

ページオーサリング用コンポーネント

Adobe Experience Manager(AEM)のコンテンツフラグメントは、ページから独立したアセットとして作成および管理されます。コンテンツフラグメントを使用すると、チャネルに特化しないコンテンツをチャネル固有のバリエーションと共に作成できます。作成したコンテンツフラグメント(とそのバリエーション)は、コンテンツページのオーサリング時に使用できます。また、既存のコンテンツフラグメントアセットを、画像コンポーネントなどのアセットベースのコンポーネントと同様に、アセットブラウザーからページにドラッグして使用することもできます。既製のコンテンツフラグメントコンポーネントには、参照されているコンテンツフラグメントの要素が 1 つだけ表示されます。ページ上に表示する要素、バリエーションおよびフラグメント段落の範囲はコンポーネントダイアログで定義できます。

注意:

コンテンツフラグメントコンポーネントは、廃止された(Geometrixx Media の)記事コンポーネントの強化版として AEM 6.2 で導入されました。

定義

コンテンツフラグメントコンポーネントは、コンテンツフラグメントアセット(効果的に拡張されたテキストアセット)への参照を保持するために使用されます。コンテンツフラグメントのリソースタイプは次のとおりです。

dam/cfm/components/contentfragment/contentfragment

参照を定義するには、次のプロパティを使用します。

fileReference

コンテンツフラグメントコンポーネントを完全にサポートしているのは、タッチ操作向けエディターだけです。タッチ操作向けエディターには、次のクライアントライブラリが含まれます。

cq.authoring.editor.plugin.cfm

このライブラリは、コンテンツフラグメント固有の機能をエディターに追加します。例えば、コンテンツフラグメントをページに追加して設定する機能や、アセットブラウザー内のコンテンツフラグメントアセットやサイドパネル内の関連コンテンツを検索する機能がサポートされます。

中間コンテンツ

コンテンツフラグメントコンポーネントを使用すると、表示される要素のさまざまな段落の間に追加コンポーネントを挿入できます。基本的に、表示される要素はさまざまな段落で構成されます(各段落はキャリッジリターンによってマークされます)。これらの段落の間に、他のコンポーネントを使用してコンテンツを挿入できます。

技術的には、表示される要素の各段落は個別の parsys 内に存在しており、段落間に追加される各コンポーネントは(内部的な処理では)その parsys に挿入されます。

言い換えると、コンテンツフラグメントコンポーネントのインスタンスが 3 つの段落で構成されている場合、コンポーネントはリポジトリ内に 3 つの異なる parsys を持ちます。コンテンツフラグメントに追加される中間コンテンツはすべて、実際にはこれらの parsys の内部に配置されます。

リポジトリ内では、中間コンテンツは全体の段落構造内での自身の位置を基準として格納されます。実際の段落コンテンツに付加されるわけではありません。

この仕組みを理解するために、次のような状況を考えてみましょう。

  • コンテンツフラグメントのインスタンスが 3 つの段落で構成されている
  • 2 番目の段落の後に、既にいくつかのコンテンツが挿入されている
    • この場合、コンテンツは 2 番目の parsys に格納されます。

基本的に、このインスタンスの段落構造を変更した場合は(表示される段落のバリエーション、要素または範囲を変更するなど)、表示される中間コンテンツに影響が及びます。例えば次の場合が考えられます。

  • コンテンツフラグメントコンポーネントが編集され、2 番目の段落の前に別の段落が追加される:
    • 中間コンテンツは、新規作成された段落の後に表示されます(2 番目の parsys が新規作成された段落を保持するようになります)。
  • コンテンツフラグメントコンポーネントが編集され、2 番目の段落が削除される:
    • 中間コンテンツは、以前は 3 番目だった段落の後に表示されます(2 番目の parsys が、以前は 3 番目だった段落を保持するようになります)。
  • 最初の段落だけを表示するようにコンテンツフラグメントコンポーネントが設定される:
    • 中間コンテンツは表示されなくなります(新しい設定によって、2 番目の parsys はレンダリングされなくなります)。

コンテンツフラグメントコンポーネントのカスタマイズ

既製のコンテンツフラグメントコンポーネントを拡張のブループリントとして使用するときは、次のルールを守ってください。

  • HTL レンダリングスクリプトと関連 POJO を再利用して、中間コンテンツ機能の実装方法を確認します。
  • コンテンツフラグメントノード cq:editConfig を再利用します。
    • afterinsertaftereditafterdelete リスナーを使用して JS イベントを呼び出します。これらのイベントを cq.authoring.editor.plugin.cfm クライアントライブラリで処理して、関連コンテンツをサイドパネルに表示します。
    • コンテンツフラグメントアセットのドラッグをサポートするように cq:dropTargets を設定します。
    • ページエディターでコンテンツフラグメントのオーサリングをサポートするように cq:inplaceEditing を設定します。フラグメントのインプレースエディターは cq.authoring.editor.plugin.cfm クライアントライブラリで定義され、クイックリンクによって現在の要素/バリエーションフラグメントエディターで開けるようにします。

本作品は Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License によってライセンス許可を受けています。  Twitter™ および Facebook の投稿には、Creative Commons の規約内容は適用されません。

法律上の注意   |   プライバシーポリシー