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.
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)
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.
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)
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
fonte
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:
fonte
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.
fonte
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.
fonte