建議不要擴充或變更片段編輯器中使用的實際元件,因為這些元件仍有可能變更。
請參閱內容片段管理API —— 用戶端。
如需詳細資訊,請參閱內容片段設定轉換元件。
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
「內容片段管理」使用內部轉換程式來產生頁面的最終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
公開,並可視需要由自訂元件來運用(例如)。