FastComments.com

사용자 기반에게 보다 일관된 경험을 제공하기 위해, FastComments는 이메일 맞춤화 솔루션을 제공하여 FastComments에서 고객에게 발송되는 이메일이 귀사의 브랜딩과 일치하도록 합니다.

이 문서에서는 이 솔루션의 기능, 템플릿 언어, 현지화 및 그 외 사항들을 다룹니다.


템플릿 언어 Internal Link


FastComments 이메일 템플릿은 EJS 템플릿 언어를 사용합니다.

변수를 출력하는 예시 문법은 <%= object.someValue %>이며, 조건문은 다음과 같이 작성할 수 있습니다:

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

댓글 내용과 같은 원시 HTML을 출력하려면 다음과 같이 합니다: <%- comment.commentHTML %>. = 대신 -를 사용한다는 점에 주의하세요.

구문에 대한 자세한 문서는 위의 링크를 참조하세요.


현지화 및 사용자 정의 텍스트 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. 템플릿 렌더링 실패는 관리 UI에서 추적되고 보고됩니다.

두 번째 항목은 프로덕션에서 발생하는 렌더링 실패를 설명합니다. 예를 들어, 템플릿을 생성할 때는 미리보기가 잘 되지만 나중에 어떤 이유로 실패할 수 있습니다. 예를 들어 템플릿에 다음과 같은 내용이 있다면:

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

익명 댓글 기능이 활성화된 경우 이메일이 항상 제공되지 않기 때문에 때때로 이 코드는 실패할 수 있습니다. 그렇다면 우리는 어떻게 이를 알아내나요?

답은 오류가 두 곳에서 표시된다는 것입니다. 먼저 템플릿 목록 자체가 각 템플릿과 함께 렌더 오류 수를 보여줍니다.

그런 다음 템플릿을 볼 때, 렌더링에 실패한 횟수를 오류별로 볼 수 있습니다.

각 오류와 그 횟수 옆에는 재설정 버튼이 있어 문제를 해결한 후 카운터를 재설정할 수 있습니다.


변경 사항 적용 Internal Link

이메일 템플릿을 생성하고 편집하는 작업은 즉시 적용됩니다. 이는 사용자가 Save 버튼을 누르는 순간, 플랫폼이 해당 이메일의 최신 버전을 사용하기 시작합니다.