
Язык 🇷🇺 Русский
Шаблоны электронной почты
Чтобы обеспечить более единый опыт для вашей пользовательской базы, FastComments предоставляет решение по настройке электронной почты, чтобы письма, отправляемые вашим клиентам от FastComments, могли соответствовать вашему бренду.
В этой документации мы рассмотрим возможности этого решения, язык шаблонов, локализацию, и многое другое.
Создание шаблонов 
Панель администратора для создания шаблонов доступна по пути Customize -> Email Templates.
Здесь вы увидите список различных типов писем, отправляемых платформой, с описанием для каждого шаблона, объясняющим, когда он используется.
Например, мы можем настроить 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 — это локализованная платформа. Все наши виджеты, электронные письма и уведомления локализованы.
Локализация означает, что мы отображаем другой язык и форматирование, в зависимости от местоположения и предпочитаемого языка пользователя. Мы определяем это на основе информации, которую предоставляет браузер пользователя.
Мы можем настроить текст в электронном письме, перейдя на вкладку Translations, выбрав Locale
и отредактировав текст. Текст, изменённый по умолчанию, выделяется в интерфейсе. Вы можете
переключаться между локалями и сохранить в конце, не потеряв изменений.
К локализованному тексту можно обратиться через объект TEXT, например: <%= TEXT.INTRO %>.
Примечание по SSO
Для интеграций SSO, если locale не указан, он будет обновляться каждый раз, когда пользователь
получает доступ к виджету комментариев с другой локалью. Это означает, что их языковые предпочтения
автоматически обновляются, и будущие электронные письма будут отправляться на этой локали.
Это также можно установить вручную, указав locale в полезной нагрузке SSO.
Шаблоны по доменам 
Шаблоны могут быть настроены глобально - для всего вашего тенанта для данного типа шаблона, или
по домену. На вкладке Settings выберите нужный домен.
Обратите внимание, что если вы настроите несколько шаблонов для одного и того же домена, во время выполнения будет выбран только первый. Список шаблонов предупредит вас, когда такая ситуация произойдет.
Данные и переменные 
Каждый шаблон работает в другом контексте, а значит доступны различные данные.
Быстрый способ одним взглядом увидеть, какие данные доступны — проверить тестовые данные,
предоставленные для шаблона. При редактировании шаблона нажмите вкладку Test Data, чтобы увидеть
структуру JSON.
Мы также можем настраивать тестовые данные в этой области, чтобы посмотреть, как наш шаблон выглядит
в различных ситуациях. Тестовые данные можно сбросить до значений по умолчанию с помощью кнопки Reset.
Ошибки рендеринга 
Поскольку шаблоны писем поддерживают переменные, и логику, возможно создать шаблоны которые не удаётся отрисовать, или иногда не отрисовываются.
Это может быть очень сложно диагностировать и отлаживать, особенно если это прерывистая проблема, или если она возникает только тогда, когда данные выглядят определённым образом.
Чтобы помочь, FastComments Email Templates предоставляет несколько функций:
- Если шаблон не удаётся предварительно просмотреть, его нельзя сохранить. Будет показано сообщение об ошибке.
- Сбои рендеринга шаблонов отслеживаются и отображаются в интерфейсе администратора.
Второй пункт описывает сбои рендеринга, которые происходят в продакшене. То есть вы создаёте шаблон, который нормально отображается в превью — но позже по какой-то причине перестаёт работать. Например, если у нас в шаблоне есть следующее:
<% if (comment.commenterEmail.includes('test') { %>Это может иногда давать сбой, если у нас включено анонимное комментирование, поскольку email будет не всегда доступен. Так как же мы об этом узнаем?
Ответ в том, что ошибки отображаются в двух местах. Сначала сам список шаблонов показывает счётчик ошибок рендеринга рядом с каждым шаблоном.
Затем, при просмотре шаблона мы можем увидеть для каждой ошибки количество раз, когда шаблон не удалось отрендерить.
Кнопка сброса расположена рядом с каждой ошибкой и её счётчиком, чтобы мы могли сбросить счётчик после того, как проблема будет устранена.