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

  1. 從您的專案根目錄,將來源部署至目標組織:

    code language-bash
    sf project deploy start --source-dir force-app --target-org <your-org-alias>
    
  2. 確認部署完成且沒有錯誤。

  • force-app/main/default/lwc/sfgsmfe — LWC套件(HTML、JS、CSS、meta)。
  • force-app/main/default/classes/EmailTemplateController.cls — 範本建立的頂點。

存放庫也可能包含靜態資源(reactAppsfgsmfe_react)。 sfgsmfe.js中的目前GenStudio for Performance Marketing載入器使用standalone.js的Adobe CDN URL;除非您變更實作,否則該載入路徑不需要這些靜態資源。

將元件新增至「閃電」頁面(管理員)

sfgsmfe元件已公開:

  • 閃電應用程式頁面
  • 首頁
  • 記錄頁面
  • 索引標籤(透過自訂索引標籤上的Lightning頁面)

若要新增元件:

  1. 在​ 設定 ​中,開啟​應用程式管理員
  2. 建立​新的Lightning應用程式 (或開啟您要擴充的現有應用程式)。
    新的Lightning應用程式模組 {width="80%" modal="regular"}
  3. 開啟應用程式並選取​編輯
    The Edit Lightning App強制回應視窗 {width="80%" modal="regular"}
  4. 建立​新頁面 (或編輯現有的「閃電」頁面)。
    新頁面強制回應視窗 {width="60%" modal="regular"}
  5. 在​ 閃電App Builder ​中,將​ sfgsmfe ​元件拖曳到配置圖上。
  6. 儲存啟動,並將頁面指派給正確的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安全性設定,允許此來源載入指令碼。

如果指令碼無法載入:

  1. 開啟瀏覽器開發人員工具。
  2. 檢查​ 主控台 ​和​ 網路 ​索引標籤中是否有封鎖的要求或CSP違規。
  3. 依照Lightning的目前Salesforce檔案,新增或調整https://experience.adobe.com的​信任URL (以及您Salesforce版本的任何相關設定)。
    Salesforce CSP信任的網站 {width="80%" modal="regular"}

設定整合值(開發人員/實作)

在LWC JavaScript中為sfgsmfe設定了數個值。 客戶通常會根據環境更換這些裝置。

說明
folderId
用於建立新範本之電子郵件範本的Salesforce資料夾識別碼(00l...)。 Apex需要;資料夾必須存在且可供執行中的使用者存取。
imsOrg
傳遞至GenStudioExperienceSelector.renderExperienceSelectorWithSUSI的Adobe IMS組織識別碼。
susiConfig.clientId
適用於Experience Selector應用程式註冊的Adobe SUSI使用者端ID。
GenStudio script.src
UMD standalone.js套件組合的URL;如果Adobe發佈新路徑,請更新。

電子郵件範本建立將GenStudio欄位對應至範本(例如,來自experienceFields的主旨)。 如果內容模型不同,請調整LWC中的對映。

如需renderExperienceSelectorWithSUSI及相關選項的詳細資訊,請參閱Experience Selector MFE主題中的組態屬性

Apex: EmailTemplateController

EmailTemplateController.createEmailTemplate通常會:

  • 驗證範本名稱、資料夾ID及非空白的HTML。
  • 建立具有TemplateType = 'custom'HtmlValueSubjectBody和資料夾指派的EmailTemplate
  • 透過AuraHandledException到LWC的曲面錯誤。

營運秘訣:

  • 尊重組織中的DeveloperName唯一性和命名規則。
  • 確認資料夾識別碼,並確認使用者可在該資料夾中建立EmailTemplate記錄。
  • 當DML無法擷取確切錯誤時,請使用Salesforce除錯記錄檔。

驗證檢查清單

在部署及設定後,確認此清單中的專案,以確實驗證整合:

  1. 部署完成且沒有錯誤。
  2. 使用者可以開啟包含sfgsmfe的Lightning頁面,並檢視Experience Selector UI。
  3. 元件未顯示載入錯誤;[網路]索引標籤傳回standalone.js的HTTP 200。
  4. 選取GenStudio Experience​會開啟選取器並執行選取範圍回呼。
  5. 當您使用該流程時,建立電子郵件範本​成功,範本出現在​ 設定 ​中已設定的資料夾下。

另請參閱

recommendation-more-help
genstudio-for-performance-marketing-help-extensibility