內容片段的元件

編寫片段的元件

注意

建議不要擴充或變更片段編輯器中使用的實際元件,因為這些元件仍有可能變更。

請參閱內容片段管理API —— 用戶端

頁面編寫元件

注意

現在建議使用內容片段核心元件。 如需詳細資訊,請參閱開發核心元件

本節詳細說明傳送的原始元件,以便與​General​群組中的內容片段(Content Fragment)搭配使用。

注意

如需詳細資訊,請參閱內容片段設定轉換元件

Adobe Experience Manager(AEM)內容片段會建 立並管理為不受頁面影響的資產。它們可讓您建立不受頻道影響的內容,以及(可能是特定頻道的)變化。 然後,您可以在編寫內容頁面時使用這些片段及其變化。您也可以使用現有的內容片段資產,方法是將資產從資產瀏覽器拖曳至頁面(至於其他以資產為基礎的元件,例如基礎元件影像)。 現成的內容片段元件只顯示參考內容片段的一個元素。 使用元件對話框,可以定義要在頁面上顯示的元素、變化和片段段落範圍。

注意

此內容片段元件是在AEM 6.2中以增強版Article元件的形式引進,已過時。

注意

傳統UI不支援內容片段。

定義

該​內容片段​元件用於保存對內容片段資產的引用(有效增強的文本資產)。 內容片段的資源類型為:

dam/cfm/components/contentfragment/contentfragment

引用在屬性中定義:

fileReference

只有觸控式UI的編輯器完全支援內容片段元件,其中包含用戶端程式庫:

cq.authoring.editor.plugin.cfm

此程式庫會將內容片段的特定功能新增至編輯器。 例如,支援在頁面上新增和設定內容片段、在資產瀏覽器中搜尋內容片段資產以及在側面板中搜尋相關內容。

內容之間

內容片段 t元件允許您在顯示的元素的不同段落之間放置其他元件。 基本上,顯示的元素由不同段落組成(每個段落標有回車符)。 在每個段落之間,您可以使用其他元件插入內容。

從技術角度看,顯示的元素* *的每個段落都以其自己的parsys為生,而您在段落之間添加的每個元件都將(在外罩下)插入parsys中。

換言之,如果內容片段元件的實例由三個段落組成,則該元件在儲存庫中將有三個不同的段落。 新增至內容片段的所有中間內容實際上都位於這些參數中。

在儲存庫中,中間內容相對於其在整體段落結構內的位置被儲存,即它不附加到實際段落內容。

為了說明這一點,我們考慮一下:

  • 由三個段落組成的內容片段實例

  • 第二段之後已經插入了一些內容

    • 這表示內容將儲存在第二個參數中。

基本上,如果此實例的段落結構改變(通過更改顯示的段落的變化、元素或範圍),則可能影響內容片段內容時顯示的中間內容:

  • 已編輯,並在第二段前加入另一段:

    • 中間內容將顯示在新建立的段落之後(第二個段落現在保留新建立的段落)。
  • 已編輯,並移除第二段:

    • 中間內容將顯示在先前是第三個段落的段落之後(第二個段落現在保留上一個第三個段落)。
  • 已設定為只顯示第一個段落:

    • 不會顯示中間內容(第二個參數因新配置而不再呈現)。

自訂內容片段元件

若要將現成可用的內容片段元件當做擴充藍圖,您應遵守下列合約:

  • 重複使用HTL轉換指令碼及其相關的POJO,以檢視如何實作內容介入功能。

  • 重複使用內容片段節點:cq:editConfig

    • afterinsert/ afteredit/ afterdelete監聽器用於觸發JS事件。 這些事件將在cq.authoring.editor.plugin.cfm用戶端程式庫中處理,以便在側面板中顯示相關內容。
    • cq:dropTargets已設定為支援拖曳內容片段資產。
    • cq:inplaceEditing 已設定為支援在頁面編輯器中編寫內容片段。片段就地編輯器定義在cq.authoring.editor.plugin.cfm客戶端庫中,並允許快速連結在片段編輯器中開啟當前元素/變化

演算前的資產重寫

「內容片段管理」使用內部轉換程式來產生頁面的最終HTML輸出。 這由「內容片段」元件內部使用,也由更新參考頁面上參考片段的背景程式使用。

在內部,Sling Rewriter會用於該演算。 在/libs/dam/config/rewriter/cfm中找到相應的配置,並可根據需要進行調整。 如需詳細資訊,請參閱Apache Sling Rewriter

現成配置使用以下變壓器:

  • transformer-cfm-payloadfilter -僅用於 body 檢索片段 <body>...</body>HTML的部件()

  • transformer-cfm-parfilter -如果指定段落範圍,則過濾掉不要的段落(如「內容片段」元件所做)

  • transformer-cfm-assetprocessor -用於內部檢索嵌入在片段中的資產清單

演算程式透過com.adobe.cq.dam.cfm.content.FragmentRenderService公開,並可視需要由自訂元件來運用(例如)。

本頁內容

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now