J'utilise Drupal 8.1 avec les règles 8.x-3.0-alpha1.
Je souhaite créer une règle pour envoyer un e-mail à l'auteur d'un nœud lorsqu'un nouveau commentaire est publié sur ce nœud. Le problème est que je n'ai pas obtenu l'adresse e-mail de l'auteur avec des règles car le jeu de données ne me donne que ces valeurs: @ node.node_route_context: node ou comment mais sous comment je n'ai rien trouvé comme comment: node: author. Dans Drupal 7, j'ai ces données. Que dois-je faire dans Drupal 8?
Réponses:
Réponse mise à jour
En testant cela sur une nouvelle installation de Drupal 8 avec des règles (Alpha 2), je suis tombé sur un bug qui empêche un test réussi, tandis que le sélecteur de données ci-dessous est correct, je ne suis actuellement pas en mesure de reproduire une règle de travail.
Le rapport de bogue est ici: https://www.drupal.org/node/2770291 - Pour résumer ce problème, Rules s'attend à ce que le paramètre TO: soit un tableau et génère une erreur lors du passage du jeton d'adresse e-mail ci-dessous qui renvoie un chaîne.
Ma réponse initiale est vraie pour Drupal 7, mais pour Drupal 8, la situation semble plus simple et repose sur un seul fait qui n'est pas encore bien documenté.
En D7, nous connaissons une syntaxe ressemblant à:
comment:node:author:mail
En D8, le même sélecteur (qui fonctionne) est:
comment.entity_id.entity.uid.entity.mail.value
J'espère que cela aide, je laisse la réponse précédente ci-dessous au cas où cela aiderait quelqu'un d'autre.
Réponse précédente
* En général, avec Rules pour utiliser la valeur d'un champ, la règle doit d'abord vérifier spécifiquement l'existence du champ (c'est-à-dire que le champ a une valeur dans le contexte où la règle est en cours d'exécution). Si vous n'avez pas déjà essayé cela, vous pouvez essayer d'ajouter une condition "Entité a un champ" à la règle pour vérifier l'existence de l'adresse e-mail. Cela devrait ensuite exposer le jeton pour le champ.
J'ai rencontré des problèmes similaires lors de l'exécution de règles à l'aide de relations d'entité (ce qui est plus ou moins ce que vous faites en référençant l'auteur à partir du nœud) pour vérifier l'existence du champ (dans votre cas, très probablement une vérification que l'entité a un auteur (cela devrait ouvrir l'accès à l'objet utilisateur) puis une vérification par rapport à l'objet utilisateur pour s'assurer qu'il a une adresse e-mail) a ouvert les jetons de champ disponibles à partir de l'entité référencée. *
la source
Il y a un exemple de travail dans la file d'attente des problèmes de règles qui a été publiée en novembre 2016, donc cela a été possible au moins depuis. Voir https://www.drupal.org/project/rules/issues/2828422
Voici une version légèrement modifiée de cette réponse. Vous pouvez l'importer dans votre site et le consulter dans l'interface utilisateur pour savoir comment configurer cette fonctionnalité.
la source