Developing Page Fragments
ご覧のページは、お客様の利便性のために一部機械翻訳されています。また、ドキュメントは頻繁に更新が加えられており、翻訳は未完成の部分が含まれることをご了承ください。最新情報は都度公開されておりますため、必ず英語版をご参照ください。翻訳に問題がある場合は、 こちら までご連絡ください。

フラグメントドロップゾーンの定義

ドロップ ゾーンは、コンテンツ ページの構築に不可欠です。 それらを使用して、ユーザーが他のフラグメントとウィジェットをドラッグアンドドロップできるフラグメント内の領域を定義することにより、独自のページレイアウトと動的表示を作成できます。

警告

ドロップ ゾーンを過度に使用すると (例: 100 を超える)、ページ エディターでパフォーマンスの問題が発生する可能性があります。 影響は環境やページの複雑さによって異なる場合があります。 パフォーマンスを向上させるには、ドロップ ゾーンの代わりに グリッドとコンテナー フラグメントを使用することを検討してください。

ドロップゾーンを定義するには、

  1. サイト管理デザインフラグメントに移動します。

  2. [フラグメントセット]で、カスタマイズしたいフラグメントのあるセットを選択します。

  3. 編集するフラグメントの アクション (Action) をクリックし、 編集 を選択して フラグメント エディターを開きます。

  4. HTML コード領域で、 <lfr-drop-zone></lfr-drop-zone> ラベルを追加して、フラグメント内のドロップ ゾーンを定義します。

    重要

    フラグメント内の編集可能な要素にドロップゾーンを追加することはできません。

次のコードは、このラベルを使用して、タブフラグメント内にドロップゾーンを定義する方法を示しています。

<div class="tab-panel">
   [#list 0..configuration.numberOfTabs-1 as i]
   <div aria-labelledby="tab${i+1}-${fragmentEntryLinkNamespace}" class="d-none tab-panel-item" data-fragment-namespace="${fragmentEntryLinkNamespace}" id="tabPanel${i+1}-${fragmentEntryLinkNamespace}" role="tabpanel" tabindex="0">
      <lfr-drop-zone data-lfr-drop-zone-id="${i+1}" data-lfr-priority="${i+1}"></lfr-drop-zone>
   </div>
   [/#list]
</div>

コンテンツ ページ エディターのサイドバーに表示される結果は次のとおりです。

タブ フラグメントでは、コンテンツ ページ エディターに 4 つの異なるドロップ ゾーンが表示されます。

定義したら、フラグメントまたはウィジェットをドロップゾーンにドラッグアンドドロップできます。

フラグメントドロップゾーンID

フラグメントを指定されたドロップ ゾーンに保持するには、 data-lfr-drop-zone-id 属性を使用します。 ドロップ ゾーン ID により、ゾーンの順序が変更されたり、新しいゾーンが挿入されたりしても、フラグメントが所定の位置に留まります。

一意の ID を持つドロップ ゾーンを削除して伝播すると、ゾーンとそのコンテンツが削除されます。 同じ ID を持つゾーンを追加すると、未公開の下書きのコンテンツは復元されますが、公開済みの下書きでは新しいゾーンとして扱われます。

ドロップ ゾーン ID はオプションです。 ID のないゾーンは指定された順序で機能します。 既存のフラグメントに ID を追加して伝播すると、最初の伝播から ID が適用されます。