
語言 🇹🇼 繁體中文
電子郵件範本
為了讓您的使用者基礎獲得更一致的體驗,FastComments 提供了 一套電子郵件自訂解決方案,讓由 FastComments 發送給您客戶的電子郵件 能夠符合您的品牌形象。
在本文件中,我們將說明此解決方案的功能、範本語言、本地化, 以及更多內容。
建立範本 
建立範本的管理區域可以透過前往 自訂 -> 電子郵件範本 找到。
在此您會看到平台所發送的各種類型電子郵件清單,並為每個範本提供一段說明, 說明其使用時機。
例如,我們可以自訂 Commenter Comment Notification 電子郵件,該郵件是 Sent when a commenter has a reply to their comment。
點選 Create Template 並不會立即套用變更。您可以開啟預設範本的編輯器並試用預覽,直到您按下 Save 前都不會有任何效果。
範本語言 
FastComments 電子郵件範本使用 EJS 範本語言。
範例語法為 <%= object.someValue %> 用於輸出變數,條件敘述可以如下撰寫:
<% if (some_condition) { %>
<div>Some content.</div>
<% } else { %>
<div>Some other content.</div>
<% } %>輸出原始 HTML(例如評論內容)可使用 <%- comment.commentHTML %>。注意這裡使用 - 而非 =。
有關語法的更多文件,請參考上方連結。
在地化與自訂文字 
FastComments is a localized platform. All of our widgets, emails, and notifications are localized.
在地化意味著我們會根據使用者的位置 和偏好語言,顯示不同的語言與格式。我們是依據使用者瀏覽器提供的資訊來判定這些設定。
We can customize the text in the email by going to the Translations tab, selecting a Locale
並編輯文字。從預設值變更的文字會在使用者介面中以外框表示。你可以
在不同語系之間切換並在最後儲存,而不會遺失變更。
Localized text is accessed via the TEXT object, for example: <%= TEXT.INTRO %>.
SSO 注意事項
For SSO integrations, if locale is not specified, it will be updated every time the user
以不同語系存取評論小工具時,locale 都會被更新。這表示他們的語言偏好
會自動更新,未來寄出的電子郵件也會以該語系發送。
This can also be set manually by providing locale in the SSO payload.
依網域的範本 
模板可以設定為全域 - 針對該模板類型跨整個租戶,或
按網域設定。在 Settings 標籤中選擇所需的網域。
請注意,如果你在同一個網域設置多個模板,執行時只會採用第一個。 在出現此情況時,模板列表會發出警告。
資料與變數 
每個範本在不同的情境中運作,這表示可用的資料不同。
一個快速一目了然的方式來查看可用的資料,是檢查測試資料
為該範本所提供的。編輯範本時,點選 Test Data 分頁即可查看
JSON 結構。
我們也可以在此處自訂測試資料,以查看範本的呈現
在不同情境下。測試資料可以使用 Reset 按鈕重設回預設值。
渲染失敗 
由於電子郵件範本支援變數與邏輯,可能會建立出 無法渲染或偶爾渲染失敗的範本。
這種問題在診斷與除錯時會非常令人沮喪,特別是當它是間歇性問題,或 僅在資料呈現特定狀況時才會發生。
為了協助,FastComments 電子郵件範本提供了幾個功能:
- 若範本預覽失敗,將無法儲存。並會顯示錯誤訊息。
- 範本渲染失敗會在管理介面中被追蹤並報告。
第二點是在描述發生於生產環境的渲染失敗。也就是說,你建立了一個預覽 正常的範本——但之後不知何故會失敗。例如,如果我們在範本中有這段:
<% if (comment.commenterEmail.includes('test') { %>如果我們啟用了匿名評論,這段有時會失敗,因為 email 並不總是可用。那我們要如何得知這個狀況呢?
答案是錯誤會在兩個地方被揭露。首先,範本清單本身 會在每個範本旁顯示一個渲染錯誤計數。
接著,當檢視範本時,我們可以看到每一個錯誤的計數,顯示該範本 已渲染失敗的次數。
每個錯誤及其計數旁邊都有一個重設按鈕, 以便在我們解決問題後重置計數器。