Como posso permitir que os usuários recebam e-mails sempre que atualizo meu blog no Drupal 7?

11

Eu tenho um blog em inglês e japonês no Drupal 7. Criei este blog usando um tipo de conteúdo personalizado e exibições, não o módulo interno do blog.

Eu tenho um feed RSS (criado no Views) para cada idioma. Gostaria de permitir que os usuários se inscrevam para receber todas as atualizações em inglês para o tipo de conteúdo "blog" ou todas as atualizações em idioma japonês para o tipo de conteúdo "blog". (Suponho que a maioria dos usuários desejará apenas um idioma ou outro. Se um usuário realmente quiser os dois idiomas, não me importo de fazê-lo se inscrever duas vezes.)

Procurei usar o Feedburner nos feeds RSS, mas o módulo Feedburner não foi atualizado para o D7 e prefiro não contar com um serviço externo. (Quando tentei configurar o Feedburner sem o módulo, ele me disse que meu feed RSS não existia, embora o link de suporte me permitisse validá-lo.)

Também observei o módulo Simplenews , mas esse módulo aparentemente requer a criação de cada postagem do boletim separadamente. O que eu quero fazer é enviar automaticamente aos usuários inscritos por email quando eu postar uma atualização no blog.

Tenho certeza de que existem várias maneiras de fazer isso, mas existem tantos módulos do tipo "auxiliar de correio" que não sei onde começar.

Para resumir meus requisitos, desejo:

  • Enviar e-mail automaticamente aos assinantes quando uma nova postagem de blog no idioma apropriado for adicionada.
  • Usuários autenticados e anônimos devem poder se inscrever.
  • As assinaturas devem exigir confirmação (requisito legal).
  • A compatibilidade com o módulo MIME Mail seria um ótimo bônus.
Patrick Kenny
fonte

Respostas:

1

Outra opção alternativa é usar o Google Feedburner para enviar o e-mail em seu nome.

Consulte a documentação online para obter mais informações.

Depois que o feedburner do Google gravar seus feeds, você poderá obter um código de incorporação para o formulário de inscrição, para que os usuários possam receber alertas por e-mail. A razão pela qual isso atende tão bem às suas necessidades é que tudo gira em torno de ter uma fonte de feed RSS de qualidade, e o Views é capaz de produzi-la. A única questão real é se você deseja ter conteúdo completo ou um teaser apenas no RSS (e, portanto, no email).

Outra vantagem que tem sobre as opções de boletim informativo / gatilho acima é que ele envia apenas um resumo diário; portanto, no máximo 1 e-mail é enviado por dia para cada feed RSS gravado. Isso impedirá que você envie spam para seus assinantes fiéis quando tiver dias ativos.

Os recursos do feedburner do Google incluem (diretamente da documentação acima):

Gerenciamento de assinaturas

  • Ver e ordenar a lista
  • Ative, desative e exclua endereços de email individuais
  • Exporte sua lista no formato Excel ou CSV
  • Receba um email opcional quando as pessoas cancelarem a inscrição

Preferências de Comunicação

  • Personalize a linha de assunto e o texto do corpo do email enviado aos assinantes depois que eles optam por receber seu feed por email. Isso pode ser útil se você deseja localizar o email.
  • NOTA IMPORTANTE: Os emails são apenas texto e a referência original $ {confirmmlink} deve ser incluída no email de confirmação para ativar a assinatura.

Marca do email

  • Personalize a linha de assunto e o título do email enviado aos seus assinantes
  • Adicione um logotipo personalizado que apareça na parte superior das mensagens de email em HTML
  • Altere as fontes, tamanhos e cores do texto do corpo e do título, bem como a cor dos links

Opções de entrega

  • Escolha o seu fuso horário
  • Selecione uma janela de entrega de duas horas dentro da qual seu resumo diário será enviado

Exemplo de tutorial sobre como configurar isso pode ser encontrado aqui .

wiifm
fonte
Obrigado por sugerir o Feedburner, mas, como observado na pergunta original, ele se recusou a gravar meus feeds, apesar de poder validá-los. O erro exato que ele me fornece é "Código de erro HTTP recebido 400 ao buscar o feed de origem."; no entanto, quando clico no link "Validar este feed" na página de erro, ele informa que o feed é válido. Infelizmente, o Feedburner também não tem opções de suporte.
Patrick Kenny
Eu tive o mesmo erro, nosso problema foi que o feedburner do Google não suporta SSL. A solução fácil é permitir acesso HTTP ao feed.
WIIFM
1
Se permitir o acesso HTTP aos feeds não é uma opção, em um projeto recente, proxyizamos o feed RSS através do Google Reader e, em seguida, no Google feedburner (confuso, mas funciona). Aqui está um exemplo de feed deste processo feeds.feedburner.com/TranspowerNewsFeed - como todo o site transpower.co.nz está protegido por HTTPS
wiifm
Conceder a esta resposta a recompensa, porque, para mim, era muito mais fácil configurar no Feedburner, mesmo tendo que fazer o redirecionamento SSL através do Google Reader, do que usar o Simplenews.
Patrick Kenny
5

Isso pode ser adquirido facilmente. Eu posso lhe dar alguns passos a seguir.

Na verdade, existem pelo menos duas maneiras de conseguir isso

A. Usando gatilhos (módulo principal)

  1. Primeiro, ative o módulo principal Triggers. Isso fornecerá acionadores básicos (no seu caso, acionador UPDATE) e ações a serem executadas quando a condição for atendida.

  2. Vá para Admin> Configuração> Ações, em seguida, CRIE UMA AÇÃO AVANÇADA e selecione: Enviar e-mail. No campo do destinatário, você precisa selecionar um token adequado fornecido pelo módulo simplenews para corresponder a todos os usuários registrados. (verifique se você também possui o módulo Token instalado)

  3. Vá para Admin> Estrutura> Triggers e, em seguida, guia Nó. Escolha a terceira: TRIGGER: APÓS SALVAR O CONTEÚDO ATUALIZADO.

Se você precisar de mais controle, implemente o gancho

função YOURMODULE_trigger_info_alter (& $ triggers) {// Aqui dpm ($ triggers) para ver onde está seu gatilho de atualização e fazer as alterações. }?>

B. Usando regras (módulo contrib) Básico a mesma coisa. Se você ficar preso, siga estas etapas em um problema semelhante neste blog: http://adellefrank.com/blog/how-to-email-notifications-comments-drupal7

drupal_stuff_alter
fonte
1
'TRIGGER: APÓS SALVAR NOVO CONTEÚDO' enviará um único email na criação da postagem, enquanto 'TRIGGER: APÓS SALVAR CONTEÚDO ATUALIZADO' enviará um novo email se houver alguma atualização na postagem.
Citricguy
1
Se estiver usando o Rules, por que eu usaria a ação "Enviar email" em vez da ação "Enviar um boletim informativo por email" fornecida pelo módulo Simplenews?
22712 Patrick
5

O módulo Simplenews faz tudo o que você precisa. Pode-se configurar que cada postagem do seu blog se torne automaticamente um boletim informativo e seja enviada aos assinantes. Apenas na configuração do Simplenews, selecione o tipo de conteúdo Blog para ser uma fonte de newsletter.

Para fazer isso:

  1. Abra o formulário de configuração do tipo de conteúdo do Blog (/ admin / structure / types / manage / blog)
  2. Na guia "Opções de publicação", marque "Usar o boletim informativo simplenews"
Eugene Fidelin
fonte
Onde na configuração do Simplenews está a opção "Fonte da newsletter"? Eu acho que eu já passei por todos os menus e eu não encontrou qualquer coisa parecida com isso ...
Patrick Kenny
Veja a resposta atualizada acima.
Eugene Fidelin 5/09/12
1

Se você quiser fazer isso de forma programática, consulte drupal_mail (módulo $, chave $, $ para, $ idioma, $ params = array (), $ from = NULL, $ send = TRUE) ,

Quando o nó é atualizado, o gancho hook_node_update ($ node) será acionado. Se você deseja criar um formato de correio composto próprio, use hook_mail ($ key, & $ message, $ params) . Então você deve escrever 2 hooks primeiro hook_node_update e hook_mail. Dentro de hook_node_update, você precisa escrever a função drupal_mail que chamará seu hook_mail.

werqious
fonte
0

Você pode usar minha assinatura total do módulo sandbox

Este módulo está na fila do projeto drupal. Aqui está o link para ele: - LINK

Eu acho que vai dar a funcionalidade que você precisa.

Deepak Kumar
fonte
1
Você poderia expandir um pouco sobre como este módulo resolverá o problema do usuário?
mpdonadio