Salesforce中的Experience Selector MFE
本主題說明客戶與實作人員如何在Salesforce組織中部署及執行GenStudio for Performance Marketing Experience Selector微前端(MFE)。 內容涵蓋管理員步驟(無程式碼)、開發人員步驟(部署和設定),以及安全性相關設定,例如內容安全性原則(CSP)。
如需一般MFE整合選項、組態屬性和架構範例,請參閱GenStudio Experience Selector MFE。
這項整合的作用
Lightning Web Component (LWC) sfgsmfe會載入Adobe的Experience Selector UMD套件組合併在<dialog>中呈現,讓使用者可以從GenStudio for Performance Marketing中挑選體驗。
整合也可以:
- 預覽和解碼:在LWC內將選取的承載顯示為JSON、解碼的HTML和經過清理的HTML預覽。
- 電子郵件範本(選用): Salesforce中的 建立電子郵件範本 流程可以呼叫Apex (
EmailTemplateController.createEmailTemplate)來插入EmailTemplate記錄(HTML、主旨和資料夾)。
GenStudio for Performance Marketing的Experience Selector指令碼是從Adobe在experience.adobe.com上代管的URL載入,而非從一般實作中的Salesforce靜態資源載入。
先決條件
-
Salesforce組織:可部署中繼資料及使用 Lightning App Builder 的沙箱或生產組織。
-
Salesforce CLI: Salesforce CLI (
sf)已安裝且已驗證,例如:code language-bash sf org login web --alias <your-org-alias> -
許可權:建立電子郵件範本的使用者需要存取目標電子郵件範本資料夾,以及根據您的組織原則建立範本的許可權。 頂點執行
with sharing。 -
Adobe / GenStudio:您的Adobe IMS組織ID和SUSI
clientId必須符合您的Adobe設定(請參閱設定整合值)。 -
瀏覽器/CSP: Salesforce必須允許從
https://experience.adobe.com載入指令碼(請參閱設定內容安全性原則及Adobe URL)。
部署套件(開發人員)
專案使用Salesforce DX配置;預設套件目錄為force-app。
-
從您的專案根目錄,將來源部署至目標組織:
code language-bash sf project deploy start --source-dir force-app --target-org <your-org-alias> -
確認部署完成且沒有錯誤。
force-app/main/default/lwc/sfgsmfe— LWC套件(HTML、JS、CSS、meta)。force-app/main/default/classes/EmailTemplateController.cls— 範本建立的頂點。
存放庫也可能包含靜態資源(reactApp, sfgsmfe_react)。 sfgsmfe.js中的目前GenStudio for Performance Marketing載入器使用standalone.js的Adobe CDN URL;除非您變更實作,否則該載入路徑不需要這些靜態資源。
將元件新增至「閃電」頁面(管理員)
sfgsmfe元件已公開:
- 閃電應用程式頁面
- 首頁
- 記錄頁面
- 索引標籤(透過自訂索引標籤上的Lightning頁面)
若要新增元件:
- 在 設定 中,開啟應用程式管理員。
- 建立新的Lightning應用程式 (或開啟您要擴充的現有應用程式)。
{width="80%" modal="regular"}
- 開啟應用程式並選取編輯。
{width="80%" modal="regular"}
- 建立新頁面 (或編輯現有的「閃電」頁面)。
{width="60%" modal="regular"}
- 在 閃電App Builder 中,將 sfgsmfe 元件拖曳到配置圖上。
- 儲存、啟動,並將頁面指派給正確的Lightning應用程式、設定檔和應用程式可見度,以便目標使用者可以開啟它。
設定內容安全性原則及Adobe URL
LWC會插入其src指向Adobe之UMD組合包的<script>標籤,例如:
https://experience.adobe.com/solutions/GenStudio-experience-selector-mfe/static-assets/resources/@genstudio/experience-selector/umd/standalone.js
您必須設定Salesforce,才能根據貴組織的CSP和Lightning安全性設定,允許此來源載入指令碼。
如果指令碼無法載入:
- 開啟瀏覽器開發人員工具。
- 檢查 主控台 和 網路 索引標籤中是否有封鎖的要求或CSP違規。
- 依照Lightning的目前Salesforce檔案,新增或調整
https://experience.adobe.com的信任URL (以及您Salesforce版本的任何相關設定)。
{width="80%" modal="regular"}
設定整合值(開發人員/實作)
在LWC JavaScript中為sfgsmfe設定了數個值。 客戶通常會根據環境更換這些裝置。
folderId00l...)。 Apex需要;資料夾必須存在且可供執行中的使用者存取。imsOrgGenStudioExperienceSelector.renderExperienceSelectorWithSUSI的Adobe IMS組織識別碼。susiConfig.clientIdscript.srcstandalone.js套件組合的URL;如果Adobe發佈新路徑,請更新。電子郵件範本建立將GenStudio欄位對應至範本(例如,來自experienceFields的主旨)。 如果內容模型不同,請調整LWC中的對映。
如需renderExperienceSelectorWithSUSI及相關選項的詳細資訊,請參閱Experience Selector MFE主題中的組態屬性。
Apex: EmailTemplateController
EmailTemplateController.createEmailTemplate通常會:
- 驗證範本名稱、資料夾ID及非空白的HTML。
- 建立具有
TemplateType = 'custom'、HtmlValue、Subject、Body和資料夾指派的EmailTemplate。 - 透過
AuraHandledException到LWC的曲面錯誤。
營運秘訣:
- 尊重組織中的DeveloperName唯一性和命名規則。
- 確認資料夾識別碼,並確認使用者可在該資料夾中建立
EmailTemplate記錄。 - 當DML無法擷取確切錯誤時,請使用Salesforce除錯記錄檔。
驗證檢查清單
在部署及設定後,確認此清單中的專案,以確實驗證整合:
- 部署完成且沒有錯誤。
- 使用者可以開啟包含
sfgsmfe的Lightning頁面,並檢視Experience Selector UI。 - 元件未顯示載入錯誤;[網路]索引標籤傳回
standalone.js的HTTP 200。 - 選取GenStudio Experience會開啟選取器並執行選取範圍回呼。
- 當您使用該流程時,建立電子郵件範本成功,範本出現在 設定 中已設定的資料夾下。