Ganchos para personalização de emails de digest e notificações

Tenho um cliente que gostaria de incluir anúncios nos e-mails de resumo e notificação. Eu “criei” um plugin que permite adicionar algum texto ao e-mail de resumo (o que, na minha opinião, precisa de atualizações para acompanhar as alterações feitas naquele modelo).

Não gosto de ter que sobrescrever todo o modelo para personalizar esses e-mails.

Seria possível incluir uma maneira de adicionar conteúdo a esses e-mails sem sobrescrever o modelo?

O plugin funciona pegando um ID de tópico em um campo personalizado e incluindo o raw da última postagem do tópico como o texto adicionado ao e-mail (logo antes ou depois do cabeçalho). Embora eu ache que seja um truque bastante inteligente, isso parece uma solução um pouco complicada demais para sugerir a inclusão no núcleo. Talvez haja uma maneira de o plugin de anúncios aplicar anúncios internos aos e-mails de resumo e digest?

Gerenciando um plugin frágil

Talvez eu devesse escrever um teste que compare o e-mail de resumo com o plugin desativado com o e-mail de resumo com o plugin ativado, mas sem configuração para adicionar nada ao e-mail? Assim, eu capturaria alterações no modelo do núcleo?

6 curtidas

Olá Jay

Este plugin “funciona” com o Discourse 3.1? Ou pelo menos vale a pena testar?

Você pode tentar. Acho que não ouço falar deles desde essa mensagem, então imagino que eles não tenham atualizado desde então.

Você pode me avisar se estiver quebrado. Provavelmente não terei tempo de consertar de graça, mas talvez eu consiga.

2 curtidas

Pelo que entendi, digest_custom_html e digest_custom_text já implementam hooks para digest.html.erb e digest.text.erb. Portanto, uma implementação básica dessa solicitação envolveria a adição de mais desses hooks?

Uma implementação mais avançada poderia fornecer sub-templates, que poderiam ser usados para fornecer aos autores de plugins código de estilo e formatação mantido pelo Discourse.

Entendi corretamente que sua implementação seria possível com um digest_custom_html("before_preheader") adicionado a digest.html.erb?

Eu acho que sim. Não olho atentamente como funciona há anos.

Olá @thoka, você conseguiu implementar algo através desses hooks? Atualmente, estamos procurando injetar alguns segmentos patrocinados simples através desses hooks.

Eu fiz isso. Desde que você gere suas injeções com html_safe, você estará em boa situação.

Há uma discussão em Fixing digest_custom_html to be treated as HTML (was: Overriding digest.html.erb)

2 curtidas