Как полностью настроить внешний вид писем?

Здравствуйте, надеюсь, у вас всё хорошо. Я хотел бы иметь возможность полностью настраивать внешний вид писем (например, менять макет, удалять фотографии профиля, скруглять углы и т. д.). Как мне это сделать?

Например, я хочу изменить сводные письма:

Также я хотел бы иметь возможность настраивать письма с ответами:

Заранее благодарю за любые ответы.

Не совсем понятно, что вы имеете в виду под настройкой ответов, так как их отправляют другие люди (и я не думаю, что кто-либо вообще отвечает на дайджесты…), но это хорошее место для начала: Configuring Activity Summary emails

Извините, давайте проясним: когда я говорю «настроить письма с ответами», я имею в виду, что хочу изменить внешний вид уведомления по электронной почте, которое получает пользователь, когда кто-то отвечает на его тему.


В моём случае я настроил так, чтобы группы могли получать письма.

Предположим, Пользователь А отправляет письмо в Группу B. Затем, допустим, участник Группы B отвечает на сообщение Пользователя А. В этом случае Пользователь А получит письмо, содержащее аватарку, текст сообщения и имя участника из Группы B. На данный момент мне не нравится, как выглядит это письмо.

Например: я хочу убрать аватарку пользователя, ответившего на сообщение Пользователя А, изменить оформление текста и многие другие элементы письма.


Как мне это реализовать?

Это может быть хорошим местом для начала: Customizing the Discourse outer email template

Я уже посмотрел это, но это всё ещё не даёт мне знаний, необходимых для достижения желаемого эффекта, поскольку это влияет только на внешний шаблон письма. Например, как можно удалить эти компоненты?

Я пытался изменить шаблоны уведомлений по электронной почте в /admin/customize/email_templates, но ни одно из событий, похоже, не применяется, когда кто-то пишет нам письмо.

У меня закончились ответы, извините. Это не моя сфера!

Думаю, вы можете скрыть их с помощью CSS, хотя я не совсем понимаю, почему вы хотите, чтобы получатель сообщения не знал, кто его написал.

Тем не менее, я не совсем уверен, где именно настраивается CSS для электронной почты.

Возможно, я попробую внести изменения в CSS через /admin/customize/email_style/css, чтобы добиться желаемого эффекта.

Вот где вы это сделаете!

Хочу лишь отметить, что в Gmail изображения в формате .webp выглядят очень странно…

Формат PNG:

Формат WebP:

Файл WebP стандартного вида:


К счастью, для нас это не критичная проблема, но я хотел бы обратить на это внимание других.

Это сложная система, но та тема содержит ссылку на тему о том, как настроить внутреннее содержимое электронных писем: Customizing specific system email templates. Идея в том, что вы должны иметь возможность настраивать конкретные шаблоны, выбирая их на странице администрирования / настройки / электронная почта.

Для шаблона «Пользователь опубликовал» вы увидите что-то вроде этого:

%{header_instructions}

%{message}

%{context}

%{respond_instructions}

Я думаю, что вы можете убрать нижний элемент со своего скриншота, удалив плейсхолдер %{context}.

Спасибо за ответ:

Я пробовал это сделать, однако событие Пользователь опубликовал ЛС, похоже, не сработало, и шаблон, по-видимому, не повлиял на содержимое возвращаемого письма, даже если я заменил весь текст на одно слово.

Я не тестировал это уже давно, но, полагаю, если вы не увидели никаких изменений, вы редактировали не тот шаблон. Обратите внимание, что «User Posted» — это шаблон, используемый для уведомлений о сообщениях в обычных темах, а «User Posted PM» — для уведомлений, связанных с личными сообщениями.

Кроме того, существует довольно много шаблонов, связанных с публикациями: User Mentioned, User Posted, User Quoted, User Replied…

Аргх! Я пробовал менять User Replied, User Posted PM и User Posted. Это разговор между пользователем и группой — может ли это влиять на ситуацию?

Кажется, ни одно из внесённых мною изменений в шаблон не дало никакого эффекта…

Какое действие вызывает отправку электронного письма? Например, нажимает ли пользователь кнопку «Сообщение» на странице группы?

Пользователь — это тестовый пользователь, который отправляет электронное письмо на адрес входящей почты группы.

Обработка писем от пользователей в тестовой среде — это единственное, что я не могу проверить локально. Тем не менее, я ожидаю, что ответы на такие письма будут использовать шаблон «User Posted PM», если письмо отправляется на адрес электронной почты группы, или шаблон «User Posted», если письмо отправляется на входящий адрес электронной почты категории.

Кажется, в Discourse действительно кастомизировали шаблон электронной почты, используемый для обработки ответов от пользователей в тестовой среде на Meta. Возможно, я ошибаюсь. В любом случае, было бы полезно разобраться в этом и добавить информацию в список по адресу Customizing specific system email templates.

Я снова попытался изменить шаблон личного сообщения, размещённого пользователем, но всё ещё безрезультатно.

Вам придется изменить эти шаблоны:

Это выходит за рамки моих знаний: возможно ли это сделать через компонент темы или придется написать плагин.

Это интересно, я видел это, я нашёл несколько древних постов, связанных с этим:

Как изменить стиль шаблона электронной почты дайджеста? - dev - Discourse Meta

Пример плагина: Шаблон пользовательской сводки активности - plugin - Discourse Meta

Более свежий пост: Как показать полное имя во встроенных элементах - dev - Discourse Meta может помочь мне добиться желаемого эффекта. Я попробую это позже и сообщу всем, как у меня получится.