Automatisch eine E-Mail an alle Abonnenten senden, um über einen neuen Beitrag zu benachrichtigen
Immer wenn auf der WordPress-Website ein neuer Beitrag erstellt wird, wird automatisch eine Benachrichtigungs-E-Mail an alle abonnierten Benutzer gesendet.

Wir können Gato GraphQL verwenden, um automatisch eine Benachrichtigungs-E-Mail an alle Benutzer zu senden, die eine E-Mail-Liste abonniert haben, wenn ein neuer Beitrag auf der Website erstellt wird.
Im Demo-Video führen wir zunächst die persistierte Query E-Mail an Abonnenten senden, um über einen neuen Beitrag zu benachrichtigen aus und testen das Senden einer E-Mail mit dem Inhalt eines bestimmten Beitrags.
Wir testen es, indem wir die GraphQL-Variable $postId mit dem Wert 1 im JSON-Wörterbuch übergeben und die GraphQL-Query ausführen. Bei der Überprüfung in Mailpit (das alle E-Mails abfängt) stellen wir fest, dass tatsächlich eine personalisierte E-Mail an alle Benutzer gesendet wurde.
Zum Beispiel hat der Benutzer "Blogger Davenport" folgende E-Mail erhalten:

Standardmäßig sendet diese persistierte GraphQL-Query die E-Mail an alle Benutzer. Wir können auch angeben, an welche Benutzer die E-Mail gesendet werden soll, zum Beispiel an diejenigen, die eine E-Mail-Liste abonniert haben. Dies geschieht, indem man den users(filter:)-Input in der Query auskommentiert:
{
users
# # Retrieve only users subscribed to an email list (uncomment if needed)
# (
# filter: {
# metaQuery: {
# key: "email_list",
# compareBy: {
# arrayValue: {
# value: "new_posts",
# operator: IN
# }
# }
# }
# }
# )
}Dieser Filter ruft dann die Benutzer ab, die das Meta email_list (ein Array von Listennamen) mit dem Wert new_posts haben.
Wenn wir die Query erneut ausführen, wurde die E-Mail diesmal an 3 Benutzer gesendet (diejenigen, die diese E-Mail-Liste abonniert haben).
Schließlich automatisieren wir den Prozess, sodass immer wenn ein neuer Beitrag auf der Website veröffentlicht wird, die Benachrichtigungs-E-Mail automatisch gesendet wird. Dazu veröffentlichen wir die Automatisierungs-Regel Send notification email to users when there is a new post.
Diese Automatisierungsregel wird durch den Hook gatographql:draft_to_publish ausgelöst. Immer wenn der Status eines Beitrags von draft auf publish wechselt, wird automatisch eine Benachrichtigungs-E-Mail an die Benutzer gesendet.