APIsを使用したカスタム・セクション・レイアウトの開発
Oracle Content Managementで、レンダリングAPIや編集APIを含むセクション・レイアウトAPIを使用してカスタム・セクション・レイアウトを開発できます。
参照する初期ファイルの詳細は、「セクション・レイアウトの作成」を参照してください。 セクション・レイアウトの初期ファイルには、セクション・レイアウト・ファイルの構造に関する詳細を含むコメントが含まれます。
APIsのレンダリング
render.mjs
モジュールからロードされるRendering APIは、サイト・ビルダーおよび実行時に使用されます。
レンダリングAPI | 説明 | 入力パラメータ | 戻り結果 |
---|---|---|---|
(コンストラクタ) | セクション・レイアウト・レンダリング・モジュールを初期化します。 |
次のプロパティを含むJavaScriptオブジェクト:
|
セクション・レイアウト・レイアウト・レンダリングAPIsが初期化されます。 |
render |
子コンポーネントのコンテナDIVsを含む、ページへのセクション・レイアウトに適したDOM要素を空にします。 |
コンテナ(要素): セクション・レイアウトのマークアップをレンダリングするDOM要素。 |
このメソッドが復帰すると、子コンポーネントがレンダリングされます。 子 |
addComponent |
子コンポーネントをセクション・レイアウトに動的に追加するために、コンテンツ・リスト・コンポーネントとともに使用されます。 この関数はオプションです。 |
コンテナ(要素): 新しいコンポーネントをレンダリングするDOM要素。 componentId (String): セクション・レイアウトに追加する新規コンポーネントのID。 |
このメソッドが戻ると、 |
APIsの編集
edit.mjs
モジュールは、if hasEditHandlers
プロパティが、セクション・レイアウトに関連付けられたappinfo.json
ファイルでtrue
に設定されている場合にロードされます。
編集APIはサイト・ビルダーで使用されます。
コンストラクタを除く、このモジュールのすべての関数はオプションです。
編集API | 説明 | 入力パラメータ | 戻り結果 |
---|---|---|---|
(コンストラクタ) | セクション・レイアウト編集モジュールを初期化します。 |
次のプロパティを含むJavaScriptオブジェクト:
|
セクション・レイアウトの編集APIsが初期化されます。 |
getCapabilities |
セクション・レイアウトの編集機能を記述したオブジェクトを返します。 |
セクション・レイアウトの編集機能を記述するJavaScriptオブジェクト。 入力時に関数にデフォルトの機能が提供されます。 この関数では、必要に応じて機能オブジェクトを変更できます。 機能オブジェクトには次の機能があります:
|
(オブジェクト): セクション・レイアウトの機能。 |
getCaptionContent |
UI要素に表示されるセクション・レイアウト表示名を返します。 |
なし。 |
(文字列): セクション・レイアウトの表示名。 |
filterCapabilities |
ユーザーにメニューが表示される前に機能オブジェクトを変更できるようにします。 このAPIを使用して、メニュー・オプションを調整または削除できます。 (getCapabilitiesも参照してください。) |
セクション・レイアウトの編集機能を記述するJavaScriptオブジェクト。 入力時には、デフォルトの機能が関数に提供されます。 |
(オブジェクト)セクション・レイアウトの機能。 |
onDragOver | ドラッグ・アンド・ドロップ操作中に呼び出され、ドラッグしたアイテムをセクション・レイアウトにドロップできるかどうかを示します。 |
eventObject (イベント・オブジェクト): ドラッグ・イベントに関する情報を保持するイベント・オブジェクト。 dataTransfer (DataTransferオブジェクト): セクション・レイアウトにドラッグされているアイテムに関する情報を保持する |
(ブール)セクション・レイアウトでドラッグされたアイテムを受け入れることができるかどうかを示す値。 セクション・レイアウトがドラッグされたアイテムを受け入れることができる場合はtrueを返しますが、そうでない場合はfalseを返します。 |
onDrop | ドラッグ・アンド・ドロップ操作のドロップ部分に呼び出され、ドラッグされたアイテムをセクション・レイアウト内に配置する必要があることを示します。 |
eventObject (イベント・オブジェクト): ドロップ・イベントに関する情報を保持するイベント・オブジェクト。 「dataTransfer (DataTransferオブジェクト)」 DataTransferオブジェクトは、セクション・レイアウトにドロップされるアイテムに関する情報を保持します。 |
(ブール)セクション・レイアウトで削除操作が処理されたかどうかを示す値。 trueを戻すと、デフォルトのロジックはバイパスされます。 |
onAddComponent | ドラッグ・アンド・ドロップ・レイアウトにアイテムが追加されたことをセクション・レイアウトに通知します。 |
eventObject (イベント・オブジェクト): ドラッグ・イベントに関する情報を保持するイベント・オブジェクト。 dataTransfer (DataTransferオブジェクト): セクション・レイアウトにドロップされるアイテムに関する情報を保持するDataTransferオブジェクト。 componentId (String): 新しく追加されたアイテムの |
セクション・レイアウト通知です。 |
onMoveComponent |
セクション・レイアウトに、ドラッグ・アンド・ドロップ操作がセクション・レイアウト内のアイテムを移動したことを通知します。 |
eventObject (イベント・オブジェクト): ドラッグ・イベントに関する情報を保持するイベント・オブジェクト。 dataTransfer (DataTransferオブジェクト): セクション・レイアウトにドロップされるアイテムに関する情報を保持するDataTransferオブジェクト。 componentId (String): 移動したアイテムの |
セクション・レイアウト通知です。 |
getSettingsData |
設定パネルが表示される前に、セクション・レイアウトで設定データを変更できるようにします。 |
settingsData (Object): セクション・レイアウトに対して計算されたデフォルト設定データ |
(オブジェクト)セクション・レイアウトの設定データ。 |
updateSettings |
設定パネルを閉じた後に、セクション・レイアウトがその設定を変更できるようにします。 このAPIは、設定がページ・モデルに格納される直前に呼び出されます。 |
パラメータ(オブジェクト): 設定パネルから返されるRawパラメータ・オブジェクト。 sectionLayoutData (Object): 格納されるセクション・レイアウト・データ。 デフォルト・データは |
(ページ・モデルに格納する適切な「オブジェクト」セクションのレイアウト・データ。 |
dispose |
編集モジュールで、メモリーの解放、イベントのデタッチ、および編集ハンドラと関連付けられたリソースの割当て解除を実行できます。 このAPIは、元に戻す/再実行操作の場合のように、セクション・レイアウトを完全に再描画する必要がある場合にコールされます。 |
なし。 | セクション・レイアウトの再描画は有効になっています。 |