FastComments.com

为帮助为您的用户群提供更统一的体验,FastComments 提供 一种电子邮件定制解决方案,以便 FastComments 发送给您客户的电子邮件, 可以与您的品牌相匹配。

在本文档中我们将介绍该解决方案的功能、模板语言、本地化, 以及更多内容。

模板语言 Internal Link


FastComments 邮件模板使用 EJS template language

Example syntax is <%= object.someValue %> to print variables, and conditional statements can be done as so:

<% if (some_condition) { %>
    <div>Some content.</div>
<% } else { %>
    <div>Some other content.</div>
<% } %>

Printing raw HTML, like for the comment content, is done like so: <%- comment.commentHTML %>. Note the - instead of the =

Refer to the above link for further documentation on syntax。


本地化与自定义文本 Internal Link

FastComments 是一个本地化的平台。我们所有的小部件、电子邮件和通知均已实现本地化。

本地化意味着我们会根据用户的位置 和首选语言显示不同的语言和格式。我们通过用户浏览器提供的信息来确定这些内容。

我们可以通过进入 Translations 选项卡、选择一个 Locale 并编辑文本来定制电子邮件中的文本。与默认值不同的文本在 UI 中会被标出轮廓。您可以 在不同语言环境之间切换并在最后保存,而不会丢失更改。

本地化文本通过 TEXT 对象访问,例如:<%= TEXT.INTRO %>

SSO 注意

对于 SSO 集成,如果未指定 locale,每次用户 以不同的语言环境访问评论小部件时,该值都会被更新。这意味着他们的语言偏好 会被自动更新,今后的电子邮件将以该语言环境发送。

这也可以通过在 SSO 有效载荷中提供 locale 手动设置。

按域模板 Internal Link


模板可以设置为全局的 - 在整个租户中针对该模板类型,或 按域。在 Settings 选项卡中选择所需的域。

请注意,如果为同一域设置了多个模板,运行时只会选取第一个。 模板列表在发生这种情况时会发出警告。


数据与变量 Internal Link


每个模板在不同的上下文中运行,这意味着可用的数据不同。

快速查看可用数据的方式是检查为该模板提供的测试数据 。 在编辑模板时,点击 Test Data 选项卡即可查看 一个 JSON 结构。

我们还可以在此区域自定义测试数据,以查看模板在不同情形下的呈现效果 。 可以使用 Reset 按钮将测试数据重置为默认值。


渲染失败 Internal Link

由于电子邮件模板支持变量和逻辑,可能会创建出无法呈现或有时呈现失败的模板。

这在诊断和调试时会非常令人沮丧,特别是当问题是间歇性出现,或仅在数据呈现特定形式时才发生。

为此,FastComments 邮件模板 提供了几个功能:

  1. 如果模板预览失败,则无法保存。将显示错误消息。
  2. 模板渲染失败会在管理界面中跟踪并报告。

第二点描述的是在生产环境中发生的渲染失败。也就是说,你创建的模板预览正常 —— 但后来出于某种原因失败了。例如,如果我们的模板中有如下内容:

<% if (comment.commenterEmail.includes('test') { %>

如果我们启用了匿名评论,该表达式有时可能会失败,因为电子邮件并不总是可用。那么我们如何发现这种情况?

答案是错误会在两个地方显现。首先,模板列表本身会在每个模板旁显示一个渲染错误计数。

然后,在查看某个模板时,我们可以看到每个错误的计数,该计数表示该模板渲染失败的次数。

每个错误及其计数旁边都有一个重置按钮,以便在我们解决问题后重置计数器。


应用更改 Internal Link

创建和编辑电子邮件模板是即时生效的。也就是说,一旦你点击 Save 按钮,该 平台将开始使用该电子邮件的最新版本。