Envoyer un e-mail de notification après l'ajout de nouveau contenu

11

Certaines personnes refusent de se renseigner sur RSS et souhaitent pouvoir me donner (par exemple via un formulaire) un e-mail (sans inscription) et elles seront automatiquement informées du nouveau contenu.

Pourriez-vous m'aider à réaliser cette fonctionnalité dans Drupal 7? J'ai entendu parler de trois modules qui pourraient aider: les règles, les abonnements et la notification. Seul le premier fonctionne sous Drupal 7. Pourriez-vous configurer cette fonctionnalité avec un module approprié?

xralf
la source
Quand vous dites «sans inscription», voulez-vous dire qu'ils veulent pouvoir être informés du nouveau contenu sans avoir de compte sur votre site?
kiamlaluno
@kiamlaluno, exactement, c'est une exigence étrange. Ils ne veulent pas avoir d'utilisateurs enregistrés mais ils veulent une notification par e-mail. Je comprends que cela est peu lourd (c'est le site d'une entreprise et les visiteurs seront leurs employeurs), donc je suppose que je devrais récupérer leurs e-mails et ensuite ne pas accepter de nouveaux e-mails en raison de la possibilité de spam.
xralf
C'est une exigence assez étrange, qui élimine de nombreux candidats possibles.
kiamlaluno

Réponses:

19

Les règles sont les meilleures pour cela, cela dépend de l'API d'entité.

  • Téléchargez-les et activez-les depuis Admin -> Modules
  • Suivez maintenant Admin -> Configuration -> Workflow -> Rules
  • Cliquer sur Add new rule
  • Définissez le nom, par exemple "New content email notification", sélectionnez dans la zone 'After Saving new content'de sélection Réagir sur événement et appuyez sur Enregistrer
  • Sur la page suivante, l'événement est déjà défini, aucune condition n'est requise pour définir ici, allez à la section Action et appuyez sur Add action
  • Saisissez l'adresse e-mail du destinataire dans le Tochamp
  • Remplissez les champs Objet et Message, De. (Un certain nombre de modèles de remplacement sont disponibles pour inclure dans le texte)

ex. Nouveau contenu [nœud: titre] ajouté par [nœud: auteur] de type [nœud: type] sur [nœud: créé].

  • Frappez la sauvegarde
  • Dans le champ de paramètres, assurez-vous de Activecocher la case.
Shoaib Nawaz
la source
Merci pour cette réponse parfaite. Cela fonctionne, mais il n'écrit ce message d'erreur qu'après avoir créé un nouveau contenu Notice: Undefined offset: 0 in node_tokens() (line 140 of /var/www/modules/node/node.tokens.inc).. Pensez-vous que je peux réparer cela?
xralf
Et l'enregistrement de nouveaux contenus est très lent maintenant. Il semble qu'il envoie des e-mails lors de l'enregistrement. J'ai examiné la configuration si je peux envoyer un e-mail 2 minutes après avoir créé un nouveau nœud, mais il semble qu'il n'y ait pas une telle option.
xralf
7

... alternativement, si vous devez le faire par programme (pas via le module Rules ), vous pouvez vous connecter à hook_node_insert () et saisir l'objet $ node, puis faire avec ce que vous voulez.

geerlingguy
la source
2

Les règles feront exactement ceci:

Exemples de cas d'utilisation
- Créez des modifications de flux de travail de publication de contenu flexibles
- Envoyez des e-mails personnalisés pour informer vos utilisateurs des informations importantes
- Créez des redirections personnalisées, des messages système, des fils d'Ariane, ...

Avez-vous besoin d'aide pour le configurer?

tostinni
la source
Si vous avez de l'expérience avec la configuration, ce serait gentil de votre part. Je n'étais pas sûr que cela fonctionnerait comme je le souhaitais, alors j'ai plutôt demandé.
xralf
Comment puis-je faire en sorte que le système envoie une notification à partir de la règle par exemple toutes les 2 heures et résumer tout le nouveau contenu créé? Je ne suis pas sûr de devoir poser une nouvelle question à ce sujet ..
Azz Kawa